Commit graph

67 commits

Author SHA1 Message Date
Jan Holesovsky
f8ca17278f access_header: Pass the access_header around + unit test.
Change-Id: I5d6d93e289d8faceda59deae128e8124a0193d95
Reviewed-on: https://gerrit.libreoffice.org/41243
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-08-17 13:41:07 +02:00
Pranav Kant
1e6c345715 loleaflet: Detach closebutton from toolbar
This is so because we require this also when document is opened in
readonly mode and we don't have any toolbar in the readonly mode.

Change-Id: I085d1640f52843e01370d528d6eea656b743d908
2017-06-22 19:48:24 +05:30
Jan Holesovsky
82704ed777 loleaflet: Let's not use a 'disableabout' param.
Instead, just disable the Help -> About choice if the 'about-dialog' div was
removed from loleaflet.html.

Change-Id: I997aa5489bcfbd02f56feb79bea14e92d3666bf2
2017-05-26 10:18:05 +02:00
Jan Holesovsky
9aecf428f6 Revert "wsd: enable option to remove About dialog elements"
The request was meant the other way around; let's just not present "About" in
the menu when there is no element with "about-dialog" id.

This reverts commit b9305d17ce.
2017-05-26 10:03:33 +02:00
Henry Castro
b9305d17ce wsd: enable option to remove About dialog elements
Change-Id: I33c351cbc7373255a22f44cb31e53f21a00869bf
2017-05-25 17:43:11 -04:00
Ashod Nakashian
954a37a06c Configurable timeouts
Timeouts to dimming the doc in the browser
are now configurable from WSD and is relayed
to loleflet as expected.

Out of focus timeout is now 60 seconds.

Change-Id: I8452e30976f6a81b0c3bb3ba5774daa244c1640c
Reviewed-on: https://gerrit.libreoffice.org/37489
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-05-11 08:01:30 +02:00
Pranav Kant
b7eafb1e4a Move CSP to response headers from meta tag in html
Some older browsers don't have meta tag support for CSP. Lets put all of
the CSP in response headers to be compatible with oldies.

Change-Id: I7f0d7c294e492b3c69ebea6fbd820d6558b9c3b3
2017-04-12 19:24:51 +05:30
Pranav Kant
63631dff24 security: CSP: add frame-src 'self'
We need to be able to create iframes sometimes with same origin as ours,
eg: when loading the 'loading' page during slideshow or downloading the
file (in different formats). The 'blob:' is only used for printing
purposes.

Change-Id: I93666ee45e707997969e151af5142efeeca0d177
2017-04-09 23:32:06 +05:30
Pranav Kant
54d0ff9c21 Stop using inline event handlers wherever possible
Unfortunately, our dependencies (various plugins etc.) still make heavy
use of inline event handlers, so not possible get rid of all of them in
our bundled js. This is the reason we still have to use 'unsafe-inline'
in our CSP.

Change-Id: I519dec0834606ab3c56e090c882a93160ddcb52c
2017-04-07 13:46:04 +05:30
Pranav Kant
328df11a68 Bin this unused inline style
Change-Id: Ib4ae0cde13acea0e04526cda925f3d4528bb6605
2017-04-07 13:46:04 +05:30
Pranav Kant
03341192ca loleaflet: Add Content Security Policy
Change-Id: I450e0c9fb24d114af35ba9c503d3940ab30a4f4e
2017-04-07 13:46:04 +05:30
Pranav Kant
e4ed4c1ad2 loleaflet: Vanish UI in readonly mode
Some of the related code was accidently commited in
8ebff4399c74a42463e1ec7578e6f5a028826682

Change-Id: Ia58e31bea7352541a89ae3f1b57c611acbe27e21
2017-02-17 20:09:10 +05:30
Pranav Kant
15ed828698 loleaflet: Put row column in a container
Change-Id: Ib271a690783c51d19e3fd6c1634620740051e3bc
2017-01-12 19:29:55 +05:30
Pranav Kant
b34f5a38a2 loleaflet: Wrap slide sorter and related refactoring
Slide sorter and presentation toolbar are now contained in a
presentation-controls-wrapper and alignment values are now
factored out and only present in the container now.

Also, position the presentation-toolbar absolutely outside of
container so that slidesorter scrollbar doesn't go behind the
toolbar hindering some view of the slide thumbnails.

This would also make the job of hiding/showing the whole control
easier.

Change-Id: I080e854906ef0635aba02cfeb687bf87463ef756
2017-01-11 17:05:38 +05:30
Pranav Kant
70bbe20f95 tdf#100329: responsive menubar floating on left
Change-Id: I6089ed44a7920a79de7e89f1b0d884c2881d4c7c
2017-01-11 17:05:35 +05:30
Pranav Kant
bf7df9fa66 loleaflet: Get rid of all fixed position
Change-Id: I104882d995722c14ddefeecf579d1233f37371d6
2017-01-11 17:05:22 +05:30
Pranav Kant
fac33f7a2f loleaflet: Introduce div wrappers
Change-Id: I19ae5daaa11e810b23a1d12b81c510ce96527ac7
2017-01-11 17:05:22 +05:30
Pranav Kant
da36bfc520 loleaflet: New class lo-menu to override sm-simple theme
We can now directly use sm-simple.css from node_modules in its
pristine form and then use custom css rules to override to make
it look like LO menu bar instead of directly making changes in
sm-simple.css

Change-Id: I0773ca27fdf549d5c7df0bc781dfc019225d7cb6
2017-01-11 17:03:53 +05:30
Pranav Kant
3c1804e3b6 loleaflet: Add main-menu to main html rather than dynamically
Change-Id: I3f3a8709104ee0805f509f2c1b5eae2194c5de72
2017-01-11 17:03:53 +05:30
Pranav Kant
39dd5018e2 browser console logging depending on loleaflet_logging prop.
loleaflet_logging defaults to true with compiled with
--enable-debug otherwise false.

Browser will print additional debug info when this property is
set to true.

Change-Id: Id9fabf134bd8d19fa1a09ca8c0987df46d4f1a4c
2016-12-15 16:52:07 +05:30
Pranav Kant
dde653f920 tdf#103825: Prompt the user when session is about to expire
Set a timer in loleaflet 15 minutes before access token expiry
date (access_token_ttl value) to prompt the user to save and
refresh the session.

Change-Id: I98c3e47c9b7031e29e002f653d488747b9c17df8
Reviewed-on: https://gerrit.libreoffice.org/31381
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2016-12-02 12:38:51 +00:00
Pranav Kant
cfcc6bdd94 tdf#103450: Implement WOPI initialization postmessage API
This includes support for Host_PostmessageReady and
App_LoadingStatus

Change-Id: Iaa0222dfa63c17b26a4fcb2236973bacdd61ee62
2016-10-26 21:34:11 +05:30
Henry Castro
940e78162f loleaflet: remove map attribution 2016-09-28 10:00:35 -04:00
Henry Castro
c3568a6a41 loleaflet: refactor L.Control.Attribution.js 2016-09-27 17:28:30 -04:00
Pranav Kant
a69eea3d58 loleaflet: Modularize all of the CSS; browersify-css
Follow the same approach to bundle everything into a single file
as done for the js files in previous commit.
2016-08-03 15:45:01 +05:30
Pranav Kant
5b6df600a7 loleaflet: Modularize all of the js; use browserify
Don't include each third party script in a separate <script> tag,
rather have one single main.js file require'ing these different
scripts. Then `browserify' on main.js which bundles everything
into a single bundle.js containing all of the dependencies.

Also add these 3rd party scripts such as jquery, jquery-ui,
select2 etc. using npm, rather than manually downloading their
files from the internet. This should ease the process of managing
these front-end dependencies; upgrade process should be very easy
now.
2016-08-03 15:45:01 +05:30
Ashod Nakashian
e685f6a306 loleaflet: disable grey-out when debug-tools is open
Change-Id: Id3d2502fc7a38303395e70b710adaeaf7fae92a6
Reviewed-on: https://gerrit.libreoffice.org/27451
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-07-23 02:57:49 +00:00
Pranav Kant
1265032896 loleaflet: Separate document URL from query params
Change-Id: I9b8381b8c0d92796aadabe0bc63e5a1b144f8b41
2016-07-11 11:24:19 +05:30
Pranav Kant
277c191eb0 loleaflet: Disable revision history option by default
Hosts are supposed to provide 'revisionhistory' parameter when
calling loleaflet.html

Change-Id: I6c1a89b602a739c0d30b7aeea680b4c577b37cc4
2016-06-29 19:44:31 +05:30
Pranav Kant
454999fa57 loleaflet: Resurrect loleaflet permission model for readonly mode
Remove direct usage of editlock; instead change loleaflet
permission from view to edit when editlock message is received.
By default, map would be in 'view' mode and only get to 'edit'
when server asks it to switch to.

Use a new event 'doclayerinit' for actions that are directly
dependent on intialization of doclayer.

Change-Id: Iaceb95ad85721ddcd675c75cfeb1504ab2759ad4
2016-06-27 16:50:13 +05:30
Andras Timar
80a81abc46 loleaflet: remove extra dist/ from URL 2016-06-22 23:38:06 +02:00
Pranav Kant
55ead88236 loleaflet: Kill simplemodal library
Its use has been superceded by vex now

Change-Id: I4b032dd6e5de61548b76b56e946ced6fc86734d3
2016-06-22 20:09:35 +05:30
Pranav Kant
a789cff8e8 loleaflet: Migrate about dialog to vex
Change-Id: Id853ec14d817b2f4312dee70a087a4ac526e951b
2016-06-22 20:09:32 +05:30
Pranav Kant
c632cf5716 loleaflet: Migrate keyboard-shortcuts dialog to vex
Change-Id: I82324405ee1205becea00fc1de97c248988ab378
2016-06-22 20:00:23 +05:30
Pranav Kant
8bba9da761 Make new version string as a JSON string
... easy to differentiate on client side among various version
info parts, especially for LOKit version information.

Change-Id: I4ba18c60367fb9166462b535bc46953a82a8435d
2016-06-21 22:12:48 +05:30
Pranav Kant
90aee41c70 loleaflet: Dialog to show loolwsd, lokit version information
Change-Id: Ie05f0597d3464b5e7705bd1d1ff4ab5c03af013f
2016-06-21 15:05:11 +05:30
Pranav Kant
7e1d3fe87e loleaflet: Consistency
Change-Id: I5962af5731199cf507da0eece0adc7b480f48ce0
2016-05-31 14:33:31 +05:30
Andras Timar
9c1ff7ef96 loleaflet: decide UI language early 2016-05-29 00:04:35 +02:00
Andras Timar
62abb2533d loleaflet: bccu#1854 add optional 'lang' parameter to loleaflet.html 2016-05-28 11:04:57 +02:00
Pranav Kant
3c077539a2 loleaflet: When no permission specified, switch to old 'edit'
After the introduction of editlock, old styled loleaflet's view
and edit permissions have become obsolete. By default, when
opening a new document, the user is in that old styled 'view'
mode unless specified in the url by permission=

Lets change the behavior and make document to be in 'edit' mode
by default unless specified.

Change-Id: Iebf0d8512ddc8f7ff549c12dbb366643ca207345
2016-05-24 17:16:52 +05:30
Andras Timar
ec6e626952 loleaflet: define l10n _() function earlier 2016-05-24 00:17:44 +02:00
Andras Timar
55c77c6deb loleaflet: enable l10n of two error messages 2016-05-23 22:32:56 +02:00
Pranav Kant
2c3964be1d loleaflet: Setup infrastructure for top menubar
Change-Id: Ib48c2b3219b74da15bc2898044ad9b3c01f8a203
2016-05-23 13:27:48 +05:30
Andras Timar
bd6ee3a8b6 loleaflet: initial l10n support of context menus 2016-05-20 18:13:44 +02:00
Pranav Kant
58c1714ee8 loleaflet: Setup context menu
But use a whitelist to not show items/uno commands that
correspond to opening a dialog. Whitelist is limited as of now,
but can be extended easily to include more commands to the
context menu as required.

Change-Id: I3ff8cf722d395aa643d512c98db41ebeee0a95d1
2016-05-16 14:37:51 +05:30
Pranav Kant
787bdc276f bccu#1758: Move presentation control below slide sorter
Change-Id: I0f1046f55f4bdc8af209138a51e74e1b637a5a34
2016-04-29 21:51:08 +05:30
Jan Holesovsky
97342a2817 bccu#1653: Make the .html's, .css's and .js's versioned.
It is still possible to access them directly via loleaflet/dist/<something>,
but such use can lead to unexpected behaviour due to various caching in the
browsers etc.
2016-04-20 12:58:10 +02:00
Jan Holesovsky
aa158331fc Move css stuff from loleaflet.htms to the appropriate .css files. 2016-04-19 10:23:06 +02:00
Jan Holesovsky
b09b6eab89 Only the access_token (and _ttl) is supposed to be passed via the form post. 2016-04-13 18:32:00 +02:00
Andras Timar
07b68b37a9 loleaflet: put everything we use to dist/ and package only dist/ 2016-04-13 16:55:46 +02:00