Commit graph

2005 commits

Author SHA1 Message Date
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
Marco Cecchetti
1588d2fe12 loleflet - sc: header incorrectly shows selection sometimes
Problem:
- Select a whole row, let's say row 10.
- Select a whole column, let's say column I.

=> Columns headers right from I, (J, K etc.) are still highlighted.
Similarly if a column selected first, and a row next.

Change-Id: I13ad0e2a152ddbf96c4889a3aea5129885bc95b5
Reviewed-on: https://gerrit.libreoffice.org/38000
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-05-25 11:09:59 +02:00
Marco Cecchetti
061c720ee1 loleaflet: calc: styles are visible in fonts dropdown
Change-Id: Ia909ed9f35d6a1c80f6696abeddefe2d4ad2d6a0
Reviewed-on: https://gerrit.libreoffice.org/38001
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-05-25 11:05:21 +02:00
Henry Castro
c6b1d29578 loleaflet: simplify disable about dialog
CreateMenu is a recursive function

Change-Id: Ied1b076c1ff04a1d471af2360aa8f9fbbe3289ff
2017-05-24 15:25:36 -04:00
Henry Castro
5d22b274f8 loleaflet: add parameter to disable 'About' menu
Change-Id: I07fa655b8318f78d7e479a3dc34830ebe5f81a2e
2017-05-24 10:28:14 -04:00
Henry Castro
05deed08b4 loleaflet: fix undo repair document popup
UNDO_CONFLICT was intented to notify views, but
the constant value changed with latest patch upstream

Change-Id: I09062725539df3d974a47d89374d822d1d852770
2017-05-23 16:42:49 -04:00
Aditya Dewan
9db39ce741 tdf#107752 admin console: indicating whether a document is modified.
Change-Id: I6055a601c1dd3b5e9700ef75d7c07d7e0b13d663
2017-05-23 19:00:53 +05:30
Henry Castro
41c561233d loleaflet: prevent default context menu of the grab handles
Change-Id: I12ede87cb8207257470720c130913e3ab7e967dd
2017-05-22 21:08:30 -04:00
Henry Castro
0ebedb7efa loleaflet: prevent default context menu of the row/column resize area
Change-Id: I184a698fd63a0b3e83efb8c315ccca730d56112a
2017-05-22 20:40:55 -04:00
Pranav Kant
62680fffdb loleaflet: Change opacity manually
See inline comment

Change-Id: I62456dd300eabaa156f9673fe13c190421c22ca0
2017-05-22 16:53:50 +05:30
Ashod Nakashian
4e6fee5407 Hide connecting spinner on authorization failure
Also, fix regression resulting in "This is embarrassing..."
instead of "Unauthorized..." message.

Change-Id: If6219bfbc445b186bb4064b3f20a0ccd2854d617
Reviewed-on: https://gerrit.libreoffice.org/37893
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-05-22 07:06:50 +02:00
Ashod Nakashian
7bc5989aca loleaflet: correctly reload after server recycling
When the server recylces, the client should
transparently restore connection when the
server is back on. This was broken because
of the different times when moving in and out
of focus for dimming/inactivity purposes.

Here we track server recycling state
separately, and skip the dimming/inactivity
checks in that case.

Change-Id: I432b97b3278b5a6846c8d2c4fa964184f156d5f3
Reviewed-on: https://gerrit.libreoffice.org/37892
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-05-22 07:06:14 +02:00
Ashod Nakashian
407c538f04 Correctly send termination reason to clients
Fixes the case when the client reconnects on idle
disconnection (because it never got the 'close: idle'
message).

Also, show informative message to users in this case
instead of grey screen.

Change-Id: Ia2e1f2ffefe6d35dd1552e7cc44e490aab86c600
Reviewed-on: https://gerrit.libreoffice.org/37891
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-05-22 07:05:28 +02:00
Pranav Kant
bcf958c500 wsd: Fail gracefully when storage misbehaves
When WOPI's CheckFileInfo or GetFile responds with status code other
than HTTP 200, show a message to the user indicating some problem in the
storage.

Currently, we open an empty document if storage doesn't return a
document which surely is not correct.

Mention the storage server address when asking user to contact the
server administrator to be more friendly.

Change-Id: I15f0489f36db8689b43d42f6b691fdd21815e4fa
2017-05-19 20:53:42 +05:30
Andras Timar
8cbcf9a41a loleaflet: updated translations
Change-Id: Ic25539b5a5800f9f77ed81697a59bc40ce3fb6da
2017-05-18 14:37:49 +02:00
Aditya Dewan
45b923cb2e tdf#107891 zoom does not reset on window resize
Change-Id: I799d2517496233e6ec04587c257eeada56769aca
Reviewed-on: https://gerrit.libreoffice.org/37747
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-05-18 11:41:34 +02:00
Pranav Kant
827d3f63cb loleaflet: Use safer text assignment method
Change-Id: Idb0e5454f5d795132c762e22c596710bfed75770
2017-05-17 23:31:26 +05:30
Marco Cecchetti
afe8e9d245 loleaflet: broken shortcut for comments
Change-Id: I08eae6a1ba5c22f863f73a2625803f1b38e6e415
Reviewed-on: https://gerrit.libreoffice.org/37713
Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
Tested-by: Marco Cecchetti <mrcekets@gmail.com>
2017-05-17 16:23:55 +02:00
Marco Cecchetti
2b8fc61dde loleaflet: impress: comments that are being modified are shown twice
Reworked handling of annotation layout. Now it behaves more like
writer annotations.

Now scrolling up annotations leads to scrolling the current slide too
when it is required in order to show not visible annotations.

Moreover the top visible annotation is now remembered for each slide,
and when the top annotation is not the first one, a bit of the bottom
of the previous annotation is showed so that the user gets aware that
there are more annotations above.

Change-Id: I3d087a8db35143a5e3abcd3e95e5e612d7638891
Reviewed-on: https://gerrit.libreoffice.org/37628
Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
Tested-by: Marco Cecchetti <mrcekets@gmail.com>
2017-05-16 16:12:54 +02:00
Marco Cecchetti
ef5376197e Loleaflet: Fix for row/col headers and annotation marks on tab switching
Change-Id: Id0f52603af7eaa49979f68d222c9c94e79cf65b1
Reviewed-on: https://gerrit.libreoffice.org/37251
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-05-16 13:21:22 +02:00
Marco Cecchetti
647556b442 loleaflet: misplaced comment mark on inserting/deleting/resizing row/col
Change-Id: Ib95870905d1bfc613ba454c7126501b3533e4ba5
Reviewed-on: https://gerrit.libreoffice.org/36982
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-05-16 13:20:47 +02:00
Pranav Kant
1cb75cbcb8 wsd: Save wrapper over .uno:Save
Document broker needs to know when the save request is sent and when the
save finished. It uses these parameters to avoid shutting down document,
in the document broker main polling loop, if save is already going on.
But direct .uno:Save commands issued from
loleaflet precludes document broker to keep track of it - in this case a
.uno:Save command issued from loleaflet followed by closing the
session will prevent saving the document to storage, if document is huge
enough and LO core takes a bit of time to save it. A save wrapper
command, 'save', ensures that document broker is aware of all such save
requests (_saveRequestTime member variable) and doesn't close the
document until we completely save it (to storage and other cleanups).

Change-Id: I5ec73d45adff23b2e7543e93dfd0624a5e5af46d
2017-05-15 11:41:52 +05:30
Marco Cecchetti
024e786e85 calc: added an address input field
Change-Id: Ic030724e392693847a195b5e53866b40ebad7435
Reviewed-on: https://gerrit.libreoffice.org/37359
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-05-11 17:55:23 +02: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
Jan Holesovsky
25224666a7 Revert "Implement File -> Download As -> Plain text (.txt)."
Actually it is enough to do Ctrl-a Ctrl-c, no need to have a special Download
As -> Plain text.

This reverts commit 1c13d5523f.
2017-05-10 15:01:01 +02:00
Pranav Kant
4e8a8d6aad loleaflet: Stop ignoring on scrollEnd only; call map.scrollTop to sync
Change-Id: Ic126b60a121cc6959b31ef5533a85e902d58c141
2017-05-09 15:35:50 +05:30
Ashod Nakashian
f9ee1c6150 loleaflet: configurable dimming timeout and fire event
Two timeout are now configurable.
idleTimeoutSecs, which controls when to dim because
of user inactivity, even if the tab is in focus.
outOfFocusTimeoutSecs, which controls when to dim
when the tab loses focus.

Currently they are set to 15 minutes and 30 seconds
respectively by default.

User_Idle event is now fired on dimming.

Change-Id: I894f6df44825b6814872f1c4986fab8dcd4d6cef
Reviewed-on: https://gerrit.libreoffice.org/37373
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-05-08 04:59:52 +02:00
Jan Holesovsky
1c13d5523f Implement File -> Download As -> Plain text (.txt).
Change-Id: I446f73a3110312cbaab1ce1053aee854b421e71c
2017-05-05 18:24:23 +02:00
Jan Holesovsky
21192c4306 Generate the l10n json files only when the appropriate po's change.
Change-Id: I17c0f022775ec631e6493ba81fa41752f6841188
2017-05-05 11:28:26 +02:00
Pranav Kant
e032cb72fa tdf#106447: Support checked items in menubar
Bin the internal command state recorder to Menubar and use the global
state recorder available in the map.

Change-Id: I32e81700e38c2d544b2d874e6a30fbe58e8d43bd
2017-05-03 21:21:28 +05:30
Pranav Kant
ffaf424103 loleaflet: Store state change handlers in new stateChangeHandler class
... instead of having this logic in our toolbar. All the elements like
menubar or toolbar can then use the map store to see the value of last
state change event for any particular uno command. We will be using it
when menubar starts using this store.

The frivolous logic in toolbar of reading the value of last uno command
should be removed. We don't expect loleaflet to change the permission
dynamically after loading the document anymore. But for now, just change
it accordingly and defer the task of removing it when we refactor
loleaflet codebase to trim our permission model (remove the 'view'
mode).

Change-Id: I1be54a62e96179b7db3f61470a92e3ddc745f52d
2017-05-03 21:21:22 +05:30
Pranav Kant
163e04af0b Make admin l10n work again
The localization.json file contains path like 'l10n/lang.json' which
means path relative the html file being accessed. This works when we
access .../loleaflet.html but not so when we access .../admin/admin.html because
then it tries to access .../admin/l10n/lang.json while it should look for
this file one directory up. One could think to change the paths in
localization.json file to something like '/loleaflet/dist/l10n/lang.json' so
that same path is accessed always for loleaflet UI as well as admin, but
it has repercussions that we access l10n data always using 'dist' prefix
and not using git hash, so browser caching the l10n data across multiple
versions.

Ideal would be to split the admin localization completely from the
loleaflet-ui localization. No point in fetching whole of the loleaflet
localizations strings when we are only accessing the admin console. This
would also solve problem mentioned previously.

For now, just split the admin localization file only while still
allowing admin console to fetch the same l10n files.

Change-Id: I0824fb05b9b4123b58d6fd8edafb374ee7128229
2017-05-02 19:52:47 +05:30
Marco Cecchetti
7aeb66be88 loleaflet: Calc, Impress: should not show Reply entry in annotation menu
There is no `reply` support in Desktop for Calc and Impress comments.

Change-Id: I827ae99148cf8f65446e23e13e2588ce0ced788e
Reviewed-on: https://gerrit.libreoffice.org/36979
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-05-02 15:03:48 +02:00
Pranav Kant
e713b843a0 lolefalet: Animate all annotation elements, not just selected
Change-Id: I5b597b057e5f26e79b4db7aa3b4b5733c34914cf
2017-05-02 14:17:18 +05:30
Pranav Kant
18e5fb50f6 loleaflet: Set correct initial position of the comment
Otherwise the comment is animated from the bottom of the document to the
correct position and it confuses IE. Better to set the correct position
of the comment initially, so it doesn't have to animate all the way
through to the original position.

Change-Id: Ie59e2d785b6a778f3c918082a1a8cb7b2923cc33
2017-04-27 16:11:05 +05:30
Pranav Kant
d5cdd776cf loleaflet: Fix replying comment behavior on IE
Change-Id: If56d217073e88ed7bc554383dc3bad059b4ef305
2017-04-27 15:12:10 +05:30
Pranav Kant
bc180ed370 Bin unused animation object
Change-Id: I66d4716ba2bfac5797d8a0e7213479abd3eb3467
2017-04-27 15:12:10 +05:30
Jan Holesovsky
5a164b3c6a comments: Don't trust the date parsing in Calc.
The Calc returns dates differently according to locale, which terribly
confuses IE11.

Change-Id: I80e70cae0091e7eeba782e43e666817f29c1a11f
2017-04-27 10:24:03 +02:00
Jan Holesovsky
fdb5f6f09f Build the translations even for the developers.
Change-Id: Ida8e705c500c9698afc32427815a5b12ab076ac9
Reviewed-on: https://gerrit.libreoffice.org/37018
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-04-27 10:01:03 +02:00
Pranav Kant
5858f4e856 Don't eat new lines
Change-Id: Idaa1af9a0bc12d9967d3807ebca95ec1ca755ae3
2017-04-27 11:09:55 +05:30
Pranav Kant
b49fd14f91 loleaflet: Pass author name field everytime editing cell annotation
Unlike writer and impress, editing annotation in calc creates a new note
without inheriting the author value from the previous cell annotation.
If we don't send the author field here while editing annotation, no
author would be set for the annotation resulting in empty string in the
UI, which looks quite incomplete and ugly.

It should be noted that the new author that is being sent to core
corresponds the current view now. So if cell annotation was added by
someone else and we are trying to edit it, we'd be the new author. This
is contrary to the behavior in writer and impress where author name
persists even if someone else edits the annotation.

Change-Id: I3bfbb34cef304687e42f4ee422d89c5a240834f0
2017-04-27 10:55:55 +05:30
Pranav Kant
56c49af98a loleaflet: Bin client side cell annotation marker
No need as core renders its in-tile annotation marker now, if comment
indicator setting is on in the document.

Change-Id: I213827fc089790398e02b0fd9cba464ab62b0d8d
2017-04-27 10:40:47 +05:30
Jan Holesovsky
ad5a5e086d comments: If we fail to parse the date, show it verbatim.
Change-Id: Iefee7057b3c192c33d49891dd7ef5835d39d1cb8
2017-04-26 19:19:56 +02:00
Pranav Kant
8acc05fa85 loleaflet: Disable retina display on calc
Change-Id: I2a16844db7873b4c26e1f28d17dc33a5526efb78
2017-04-26 17:56:02 +05:30
Pranav Kant
e3ef5d01af loleaflet: Allow mouse clicks to pass through comment/redline selection
Otherwise, it was not possible to use the mouse to click on the text
beneath the text selection svg layer. This simulates a mouse click on
the document after selecting the comment.

Change-Id: Ia2717a0a4356f40e31db94b68563abffc87cac37
2017-04-26 13:16:48 +05:30
Pranav Kant
91421bae3d loleaflet: Allow selecting annotations in readonly mode too
Change-Id: I5c58baf95a1cbbb2ffbe756de30e596e2c35e6fb
2017-04-26 13:15:03 +05:30
Pranav Kant
91f824ae21 loleaflet: Warn here when unexpected data arrives
Hitting save, while there are redlines in the document, makes lo core send
redline information with empty textRange string. Further changes to the
document however brings in correct textRange rectangles back from the
core. Though ideally, it should be investigated why core is not able to
send correct redline text rectangles or why sending these redlines at
all while saving the document (not necessary unless some
attribute in redline changed), but no harm in having an additional check
here to filter unexpected messages received from server.

Change-Id: Ib709422e91cee6f141e4fea8ac923e88d7f65f50
2017-04-26 10:33:45 +05:30
Henry Castro
fa78cbf8a6 loleaflet: fix zooms and scroll annotations of the layer Impress
Change-Id: I4785551ebac4e8f0c1f877a00b651e7ac1203e67
2017-04-25 20:38:53 -04:00
Henry Castro
d5ab42a999 loleaflet: initialize undefined variable
Math.min(undefined, number) return NaN

Change-Id: I4b1c7c0428a4e665235a170282a377f980e84924
2017-04-25 14:42:23 -04:00
Pranav Kant
31ff4d29a1 loleaflet: Warn, and don't crash, if we don't get expected data
It is possible that backend sends comment for which there is no parent
comment sent yet, as presently is the case as I am writing this. Warn
nicely in this case.

Change-Id: I2609dfdcdac69380b824d444ba8f64803996286c
2017-04-25 21:04:46 +05:30
Pranav Kant
0760786392 loleaflet: Commit reply comment when focus lost
Change-Id: I0a47c6b74afed31264aec06ab654063fb5beaca8
2017-04-25 20:27:23 +05:30
Pranav Kant
759b0945d4 loleaflet: Don't allow inserting breaks anywhere
overflow-break property is enough for us which still allows inserting
line breaks arbitrarily anywhere but only if there is no otherwise
acceptable break points in the line.

Change-Id: I8ea94daba258b00caa259c97597cf1206a89fa64
2017-04-25 19:40:30 +05:30
Jan Holesovsky
51d922f1af Lint.
Change-Id: Ie4fbe41568502f9c4f7642e8e85a631da648e3c3
Reviewed-on: https://gerrit.libreoffice.org/36939
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2017-04-25 13:14:55 +02:00
Marco Cecchetti
6735fbc8a1 Loleaflet - fix: row/col header do not update on switching tab
Change-Id: I6528646276647ea78048d68eb91794cb394b67c3
Reviewed-on: https://gerrit.libreoffice.org/36935
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-04-25 13:09:14 +02:00
Pranav Kant
2d55476b20 loleaflet: Don't overflow long names, align author names properly
Change-Id: I0d833291fc996ecb4007bcb58b588967afa6ea58
2017-04-25 14:48:23 +05:30
Pranav Kant
0c53975f18 loleaflet: New comment size/width
Change-Id: Ief2d9c942dffab7a98dc5a7de2208e511f45df78
2017-04-25 13:32:51 +05:30
Pranav Kant
7486f44ee1 loleaflet: Don't send linkified comment data back to core
Only use the modified markup for representation to the user.

Change-Id: I50a6ea4d7411a7d0a1662430f90201b00415ccbf
2017-04-25 11:40:35 +05:30
Andras Timar
567308e4b5 loleaflet: updated translations
Change-Id: I5c4542b461240ce6d56be9b488b12f79458798d3
2017-04-24 20:25:00 +02:00
Jan Holesovsky
94737a890d loleaflet: Disable the Accept / Reject if the document is read only.
Change-Id: I8d3f312d9d2dd75b44e5a779875688da1a31e123
2017-04-24 20:09:47 +02:00
Pranav Kant
2b38191e3b loleaflet: Wrap both comments and redlines
Change-Id: Iee0c61340cc78b93a2d3d23157bab715c3e7411e
2017-04-24 20:31:06 +05:30
Pranav Kant
ca482f0065 loleaflet: Fix width of the redlines too
... otherwise with very long comments, they keep increasing their width
which looks ugly.

Change-Id: I5cd67258b251a9d522716433d5e190cd29fef078
2017-04-24 20:31:06 +05:30
Pranav Kant
3a10c48013 loleaflet: new dependency - autolinker - link what can be linked
... in annotations. Emails, phone numbers, email address and what not.
We are not sending the generated markup, eg: the html <a> tags back to
LO core, only the representation in the UI is linkified.

Autolinker license: MIT
https://www.npmjs.com/package/autolinker

Change-Id: I8df3676a9eb6122884defb6bc3da87d30f993b04
2017-04-24 20:31:06 +05:30
Pranav Kant
c88f1156b2 loleaflet: Increase the annotation height a bit more
Change-Id: Ibd04cfe3e17354244a31177edca23467e0f8e9c8
2017-04-24 20:31:06 +05:30
Pranav Kant
ecdb7e2645 loleaflet: Enable vertical scroll on annotations
Change-Id: I6ff7a29bd22f57b4d9bbdbb824619030cf5f2e43
2017-04-24 20:31:06 +05:30
Henry Castro
a33e9eab76 loleaflet: disable the annotation menu if the document is read only
Change-Id: Ic5973e582e56d2452672219bdd443ec8dd551dab
2017-04-24 09:49:47 -04:00
Pranav Kant
0b419faf10 loleaflet: Trigger layout algorithm on scrollend
This is just a quick workaround to circumvent the problem where
annotations dissappear when document is scrolled swiftly using the
mousewheel.

Change-Id: I51df6cecb770e5542ecdad765a5f0ccb6ec1eb98
2017-04-24 19:07:59 +05:30
Pranav Kant
c7757a7263 loleaflet: do not unnecessarily layout on unselect
Return early if there is no annotation selected currently.
Without this patch, we were unnecessarily layouting all the annotations
again and again on every click which is likely to make things slow.

Change-Id: I20ce5894a4d605b9811eb37d3b3af207bbb48d50
2017-04-24 15:56:34 +05:30
Pranav Kant
3175a3a042 loleaflet: Check parent relationship before linking next comment
Change-Id: Ib22e1e1adca0544a70fa224abc9c98060ad83e5f
2017-04-24 15:44:53 +05:30
Andras Timar
f50b64b44e loleaflet: 'shutdown' is noun, 'shut down' is verb
Change-Id: I001a2ce9081b8f7145f2622ef844b6eeb7655193
2017-04-23 19:23:20 +02:00
Marco Cecchetti
1e0deae3df Calc: changed the way header are updated on row/col insertion/deletion
Now when a row/col is inserted/removed or resized is the core to
notify the client that current header is no more valid and a new
header should be requested by the client to core.

In this way core can notify the header invalidation to all views.

Change-Id: Ia3c1872b73cfb3458cd0d35907291a9fc9eebd11
Reviewed-on: https://gerrit.libreoffice.org/36729
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-04-21 15:45:15 +02:00
Henry Castro
42091f0b20 loleaflet: update document size when insert new annotation
Change-Id: Iaaca82aba1c04de336e89ff4e854cc9632fbfc53
2017-04-20 21:56:07 -04:00
Andras Timar
c38e5de273 loleaflet: without quotes the target file name was truncated at 'ui-bg_highlight-soft_'
Change-Id: I0f7ffb0babf4295a48e1684a24bb24a0fd7ab8f4
Reviewed-on: https://gerrit.libreoffice.org/36725
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2017-04-20 11:00:37 +02:00
Andras Timar
84259a9eb6 loleaflet: updated translations
Change-Id: I99f6fab9d8a22d13aac237ecaea3acfa5d630c4d
Reviewed-on: https://gerrit.libreoffice.org/36720
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2017-04-20 10:59:36 +02:00
Pranav Kant
ee683c106c loleaflet: Fix incorrect variable usage in this loop
Change-Id: I586ad59874b901d31b6e138a74577ecf3e1920c3
2017-04-20 12:43:39 +05:30
Pranav Kant
702bcdcf8d Surely, it is supposed to be update, not upate
Change-Id: I5d576ec0ae6976cb915b1c458546bbf82bf9fe8f
2017-04-20 12:43:39 +05:30
Henry Castro
b142e0ba48 loleaflet: add option no menu when insert new annotation
Change-Id: I0950c743f9443f85674fb087c44c8fe942bcc322
2017-04-19 21:11:28 -04:00
Aron Budea
33a562515b Show font/highlight color on toolbar in IE 11 as well
.repeat is not supported.

Change-Id: I4f9d75f851f73e4cc626ca6f0a13aa1877308e70
Reviewed-on: https://gerrit.libreoffice.org/36553
Reviewed-by: Henry Castro <hcastro@collabora.com>
Tested-by: Henry Castro <hcastro@collabora.com>
2017-04-20 02:27:24 +02:00
Henry Castro
30f8254e88 loleaflet: remove unnecessary spreadsheet context menu items
It is replaced by interactive client side annotations

Change-Id: Ib21926bea1cf125c82b9254c536d70ec94d95f91
2017-04-19 20:20:15 -04:00
Adolfo Jayme Barrientos
566c3adee9 Update Spanish translation (styles, synched from core)
Change-Id: I0262fb34860d23d149cc1127982160815d1d831e
2017-04-19 16:16:08 -05:00
Henry Castro
516fb8ae9c loleaflet: extend document size to scroll annotations
Change-Id: I9581818628c365587a4a115b9d3f0b457b8a6905
2017-04-19 15:00:06 -04:00
Pranav Kant
78fd7f6ffd loleaflet: Select change tracking comments; hidden overlay
Make this overlay interactive, but we don't want to color this overlay
since LO core already colors redlines in tiles for us.

Change-Id: I46077f5b6a28cdd492325b8ab3014fb25ecd94ec
2017-04-19 19:39:55 +05:30
Pranav Kant
4a8caa40e8 loleaflet: Select and deselect comment upon mouse click
Make comment overlays clickable and when clicked select the
corresponding annotation. Also deselect when clicked where there is no
comment overlay.

Change-Id: Id9236862eec86b7508978ad8fe803455e03adbe2
2017-04-19 19:13:25 +05:30
Pranav Kant
0fb2c19014 loleaflet: Animate child elements together with their parent
Create the new L.PosAnimation object everytime you want to animate, not
just use the same everytime which has the limitation that animation
doesn't happen simultaneously.

Change-Id: If5f63702afe0fee7f44c8cf4605179d68de289e8
2017-04-19 18:10:00 +05:30
Pranav Kant
b864b562cf Revert "loleaflet: Remove box-shadow from comments"
This reverts commit 86be5a24a5.

Change-Id: I272b9a88e29a8ab77e93dfc36c6e3aec9c91a1a6
2017-04-19 15:22:18 +05:30
Aditya Dewan
41ed318de8 tdf#106449 admin:adding user list for each document
Change-Id: Ia5c382f469a80464d0435e1e2e4de3daaba8a690
Reviewed-on: https://gerrit.libreoffice.org/36275
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-04-19 08:17:11 +02:00
Ashod Nakashian
175f4d995f loleaflet: no need to tell the user when doc is unloading
This is rare and should take a few short seconds
to save and then we can load as normal.

Since the client auto-reconnects anyway, no
need to tell the user to try again.

Change-Id: I51a7ad207edec3203933a1808288870e69699952
Reviewed-on: https://gerrit.libreoffice.org/36655
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-19 07:21:44 +02:00
Marco Viscido
0bb650e7c4 keep expired document and query them to get the historical content
A Document has its own snapshots set.
A snapshot is a string representation of a JSON object.
AdminModel keeps also the expired document objects.
Query each document object in order to get their own history.
Admin accepts an "history" command then returns a json object.
An administrator checks the history by dashboard.

Change-Id: I73c87eff334cdb5a4a58043b2b66f18a56240b3a
Reviewed-on: https://gerrit.libreoffice.org/35926
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-04-19 04:08:38 +02:00
Henry Castro
c21221d514 loleaflet: animate pan if animate: true specified
Change-Id: I1d6b70d33d7459984da1541e3cd80e722268ce13
2017-04-18 16:39:34 -04:00
Ashod Nakashian
624380089e loleaflet: don't send setclientpart when the server sets part
Client now sends setclientpart only when it wants to change
the current part number, but not when it is updating
the current part when it receives setpart from the server.

When switching parts (either by the keyboard or mouse)
LoKit sends a notification of the current part and
invalidates tiles. As a reaction to that the client
cancels its tiles and requests new tiles for the
new part. In addition, it sends setclientpart
back with the new part number.

This works fine, except when the client switches
between parts quickly (as when randomly pressing
page-up and page-down quickly in impress), by
the time LoKit receives the second request the
client would have reacted to switching the first
by sending setclientpart for the first. This
will result in a resonance back and forth ad
infinitum (or when the client goes inactive).

The client shouldn't echo back the part number
which the LoKit has told it (it should only send it
to explicitly set it itself). But the server should
be smart enough to remove duplicate setpart
notifications from the client queue. This reduces
the chances of an ocillation like that to happen.

Change-Id: Ia8a1bb25e427ab910129340ce599e3743983463b
Reviewed-on: https://gerrit.libreoffice.org/36598
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-17 07:06:02 +02:00
Ashod Nakashian
5479788e52 loleaflet: reconnect when load fails due to unloading
Retry up to 10 times with a delay of 1 second in between.

Also, show the user a message (after first reconnection
fails) that the document is unloading to try again
(but of course we auto-retry anyway).

Change-Id: I616d7643f146a6d5b7ccda7bb2aa567e3a9efe47
Reviewed-on: https://gerrit.libreoffice.org/36596
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-17 07:03:41 +02:00
Ashod Nakashian
28d15220e6 loleaflet: don't reference uninitialized docLayer
Change-Id: I0ea169474f17aa541f678c7474a6903b85129101
Reviewed-on: https://gerrit.libreoffice.org/36595
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-17 07:02:41 +02:00
Ashod Nakashian
5e3fc10eee loleaflet: log socket activity
Change-Id: I763ac09fcd5eef700b331b4d8016db3d30e1ef9a
Reviewed-on: https://gerrit.libreoffice.org/36594
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-17 06:50:25 +02:00
Pranav Kant
86be5a24a5 loleaflet: Remove box-shadow from comments
This box-shadow interferes with direct comment children and breaks the
root-children comment block UI. Lets remove the shadow for now.

Change-Id: Idda659bcfca76093c148400b2ab311bc39861e84
2017-04-14 13:46:01 +05:30
Pranav Kant
3f397584aa loleaflet: Adjust parent,children when comment is added/removed
... in between comments.

Change-Id: I7b707d04adb045df43c66a29ccc9d2c3e702fca5
2017-04-14 13:45:16 +05:30
Pranav Kant
043ec94bef loleaflet: Same width for all comments, different from redline comments
Separate css classes for these different types of annotations.

Change-Id: I2013a05a2f7095956765661169670e0bb87bb372
2017-04-14 11:46:12 +05:30
Pranav Kant
3f4c678ab3 Combine root comments with their children comments
Change the layouting algorithm to check for comment relationship and set
the layout bounds accordingly.

Change-Id: I67cc32092d8cf2c1bbc0d677258387739bfc638e
2017-04-14 11:32:05 +05:30
Henry Castro
95d5941e9b loleaflet: update annotation position when performed zoom
Change-Id: I931081b2451d965ab669b428f8b258c3e39fb729
2017-04-13 20:58:52 -04:00
Andras Timar
976ce69183 loleaflet: ' Save ' -> 'Save'
Change-Id: I23b24aeda989652b04c1759810b1801b041e0a6b
2017-04-13 12:16:03 +02:00
Henry Castro
b0c889f2d2 loleaflet: animate the new position of selected annotation
Change-Id: I47af4ac3ec01b03797a03dfcc91ec84f0fd39bb5
2017-04-12 17:24:48 -04:00
Henry Castro
44482615ca loleaflet: update PosAnimation.js file
Change-Id: I38a2643e67d1d341b486c987eb73dc5e5608a7cb
2017-04-12 17:24:48 -04:00
Andras Timar
1aeaf41999 loleaflet: updated pot files
Change-Id: I0a589a07bb5658c7b9b749c7184fa09c2e1a49de
2017-04-12 22:35:09 +02:00
Andras Timar
baa07c0997 loleaflet: src/control/Control.ContextMenu.js contains translatable strings
Change-Id: I4010eb296a1771f0e8fbfa5078b4847193cfc188
Reviewed-on: https://gerrit.libreoffice.org/36491
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2017-04-12 22:26:43 +02:00
Jan Holesovsky
7b7c73f8be Align the Accept / Reject buttons with the kebab menu.
And few other improvemnts inluding:

* use svg instead of png for the menu
* add title (caption) for the Accept / Reject change.

Change-Id: Ic7e781d7e93d319f766b387a8eddfa70c1920760
2017-04-12 17:43:49 +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
Jan Holesovsky
f5a69785de _initialCenter is now unused.
Change-Id: Ie9442168bc6075574b6d83bf0558b0c4983b2361
2017-04-12 14:39:15 +02:00
Pranav Kant
336ac4d6d1 loleaflet: Grid/selection/caret is sometimes displaced
This is actually not a displaced cursor, but displaced tiles map pane.
It happens when the user refreshes the the document page and
before the document finishes loading, switches to some other tab and
then get back to the document when the document load finishes. In such
circumstances, due to browsers not emitting the 'resize' event (probably
because it didn't have the focus when the map loaded) we return
incorrect/unexpected map center. Because 'resize' event sets this._initialCenter to
null, so map.getCenter() never returns this._initialCenter and instead
return this.layerPointToLatLng(this._getCenterLayerPoint()) which seems
to be the correct thing to return here.

The reason that the displaced cursor is not
observed when user doesn't switch to other tabs is because of the
browsers emitting the 'resize' event before we set the map transforms.
Nevertheless, in some circumstances it is quite possible that this
event, 'resize', is processed after we set the transforms even though
user hasn't switched the tabs but probability of this is very less which
justifies this bug's hard-to-reproduce nature when user doesn't change
the tabs.

Instead of making sure that 'resize' event is triggered before we set
the transforms, removing this block of code that returns unexpected
return value (which we never seem to use anywhere anyhow) seems more
sensible thing to do.

Change-Id: Iff532a902e6100be7f39c204cbf2f28f1a7f6a49
Reviewed-on: https://gerrit.libreoffice.org/36458
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-04-12 13:53:58 +02:00
Henry Castro
75e06f7687 loleaflet: fix position when adding new annotation
Change-Id: I267df778715cb9f60c1b62c52ed405fd78ade8f9
2017-04-11 20:39:40 -04:00
Henry Castro
7521e9bb91 loleaflet: add line between the currently selected comment ...
and the associated selection

Change-Id: I58d548f78e9d6594336abed8e77993d2fafe867e
2017-04-10 21:43:42 -04:00
Henry Castro
4db4ecd680 loleaflet: save comment if exists changes
Change-Id: Ided5cc2f60ae14863e6462e400735e291f1b54a5
2017-04-10 20:52:41 -04:00
Ashod Nakashian
55180606f8 loleaflet: reconnect transparently the first time
Don't show the "This is embarrassing" popup before
first trying to reconnect at least once.

In most cases reconnection is successful transparently.

However, if necessary, we could add some delay to
reconnecting to give the server time to recover,
but without good reason for this complication it's
unwarranted. Server-recycling reconnections have
such a delay.

Change-Id: Ic8e32c451429a24f8362431672057145a492a23f
Reviewed-on: https://gerrit.libreoffice.org/36328
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-10 06:12:22 +02:00
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
0f2c6d8e06 Bin unused function
Change-Id: I57bc98cd382081e776e1ed58da095a404834b431
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
d559471fab loleaflet: Exit early for invalid commandvalues
LO core doesn't output any change tracking information for spreadsheets
which results in sending an empty 'commandvalues: ' message to
loleaflet. While the actual fix for it would go in LO core, lets handle
this empty case for now in loleaflet, so that we don't throw any runtime
JS exceptions.

Change-Id: Id2b66b8e7f1c87b074d3e72168e0ca3c3c0d345d
2017-04-06 17:02:08 +05:30
Pranav Kant
a3f93b880b loleaflet: Fix loop which fetches view ids from username
Change-Id: Ia4fcfcb83a040369474c6962ce2c67b44f3f1cb3
2017-04-05 19:13:21 +05:30
Pranav Kant
a411e5b4c2 Fix cannot paste into the document
Change-Id: I14eac943ee1b6ef83e2ea1707e34218bd85b4b13
2017-04-05 17:17:32 +05:30
Pranav Kant
f90ad6e743 Revert "Add change tracking toolbar buttons"
This reverts commit 0c5efd80ad.

Change tracking options are already available in the menubar, lets bin
them from the toolbar

Change-Id: Ie340957eb1e615429a54be9cb0639db146e6d7a1
2017-04-04 23:02:00 +05:30
Marco Cecchetti
6215471e2e Loleaflet - Calc: beyond row 65535 it is not possibile to resize a row
The row parameter type was an unsigned short.

Change-Id: I81bfd5211ebc6c380014d0cd2a2b1d3b8c252749
Reviewed-on: https://gerrit.libreoffice.org/36086
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2017-04-04 17:05:10 +00:00
Andras Timar
878eef6cb4 loleaflet: Add Upper Sorbian and Lower Sorbian UI languages
Change-Id: I4ad5acbdf6746df03ddf233b986f20d200331794
2017-04-04 16:46:05 +02:00
Pranav Kant
fd64c6fcd7 loleaflet: Turn off autocomplete, spellcheck
Change-Id: I3fcd4983ca63a2de4d1bca7a1a0d4fbd7feecf38
2017-04-04 16:19:11 +05:30
Henry Castro
9c4fbdd7c5 loleaflet: add a permanent overlay text selection of the annotation object
Change-Id: I395f7cec22bf187532130b6755fcae58f51c73d2
2017-04-03 22:46:35 -04:00
Jan Holesovsky
6c25b36022 Re-introduce the Save button back to the comment creation.
Change-Id: I9e45051f2e867a0af8ab5aab2eb244d4f3449761
2017-04-03 12:04:50 +02:00
Pranav Kant
2bd1dd9646 loleaflet: There's another socket object inside
Change-Id: I952b548e11b2456e3c9d64182444377190062b89
2017-03-31 19:58:51 +05:30
Marco Cecchetti
1e24c77c82 Loleaflet - Calc: horizontal scroll bar not updated on changed doc width
For big spreadsheet (> 100k rows) when the doc width is extended the
horizontal scroll-bar is not updated, causing to not be able toscroll
the document up to the whole width.

This was due to the fact that the old doc height was obtained through
L.DomUtil.getStyle, but the precision of the retrieved value is 6
digits only.

Change-Id: I430b08dd4c864cec09b62c61420414ad306da225
2017-03-31 14:44:04 +02:00
Pranav Kant
ca8bc37657 loleaflet: Close mobile-mode menu upon clicking any menuitem
Change-Id: Iaea20a9b364fc9f1b10d95694aa9b7e465249ca1
2017-03-31 17:45:26 +05:30
Pranav Kant
4b7904036a loleaflet: Annotate readonly users in userlist
Change-Id: Ia000a06baf9f88830dd30c4c4a4297eb10192fd6
2017-03-31 12:22:39 +05:30
Pranav Kant
bc98231119 loleaflet: Store and hide readonly view cursors
Change-Id: Ib2bec3158275e77d883308e25f1984491309234f
2017-03-31 12:20:43 +05:30
Pranav Kant
30c9414d6d loleaflet: Context menu cut/copy/paste is always internal
If user wants to take something out of the document, he/she needs to
make use of keyboard shortcuts to do the same.

Change-Id: Id8237e0bfcb311d1a1465645042f160f7e1d8fb6
2017-03-31 11:07:27 +05:30
Pranav Kant
87c9b30f48 tdf#106842: Prefix 'Internal ' to cut/copy/paste strings
... in DisableCopy mode.

Change-Id: Id758d4654fbe129dd16a466050bf51686440909d
2017-03-30 18:11:49 +05:30
Pranav Kant
017fe90af1 loleaflet: Refine copy/pasting in DisableCopy mode
We always want internal document copy/paste to work and always want to
do a richtext copy/paste whenever possible.

Change-Id: I54705293bd34bc284ceff815ebdf556c7ca1587c
2017-03-30 18:11:49 +05:30
Henry Castro
ebf6bb389e loleaflet: simplify date format of the annotation object
Change-Id: I4d7adfa93f03b8fd639fd701066ed83b41a1bd82
2017-03-29 15:26:05 -04:00
Henry Castro
dc7cbaef0e loleaflet: re-work the arrangement of annotation objects
Change-Id: Idce433835bed16b943306e6ad1bb888f5e9e1ee5
2017-03-29 14:55:36 -04:00
Pranav Kant
9107b012e7 loleaflet: Prevent hscrollbar coming over context menu
Change-Id: Ie4f0fc67aad64e93fe4abc8ac624decc128f59b0
2017-03-28 18:47:18 +05:30
Samuel Mehrbrodt
460da71ce2 Use hub link for git log
Change-Id: Iaf4a6f5568f2e84d8261756607a62598a7144df1
Reviewed-on: https://gerrit.libreoffice.org/35656
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-03-27 07:15:10 +00:00
Henry Castro
d99dbade2b loleaflet: handle annotation reply for Calc documents
Change-Id: I27d03313bf4cdc43e7356e78424ee236b90c5269
2017-03-26 11:55:04 -04:00
Henry Castro
5e67e19a6c loleaflet: handle annotation reply for Impress documents
Change-Id: I47edbc8807f5f7aa5a28b3a4fd79aeebc8026262
2017-03-26 11:16:49 -04:00
Henry Castro
563b90a20a loleaflet: remove save button of the annotation object
Change-Id: I1aa19e3620d1bbd3a76fae32e97c4c32adcf0fe6
2017-03-26 10:19:10 -04:00
Henry Castro
6da38c8244 loleaflet: fix when an annotation is removed from Calc documents
Calc server does not respond with cellPos property when an annotation
is removed

Change-Id: I7c15e112c549f10277fb2fb51bc12b3f16f5fc88
2017-03-26 10:11:27 -04:00
Jan Holesovsky
9f17050a7d Pass the locale settings from loleaflet to wsd/kit.
Change-Id: Ie530db73cfbdb62787f16eae0f4b07fbf8b8acb4
2017-03-24 12:34:32 +01:00
Pranav Kant
5c8fb67863 loleaflet: Redline has only textRange property
Change-Id: I534f327cb71cddec4b3437f17f92ee4b24ed488a
2017-03-23 17:54:58 +05:30
Pranav Kant
5bb6e203c5 loleaflet: Accept, Reject redlines buttons in main annotation win.
Change-Id: I16b931c07485eb98fdac00d1dc968a4c9251a02a
2017-03-23 17:34:35 +05:30
Pranav Kant
092d93d5ef loleaflet: Do not set width explicitly
Container will automatically adjust its width as according to the width
of the containing child table or other elements.

Change-Id: I0a18dc5263d05eb8c67d342d4acf5f7c4bae128c
2017-03-23 17:10:51 +05:30
Pranav Kant
b0b7e5abe3 Revert "loleaflet: ensure visible element before getting bounds"
This reverts commit a759a01c7d.
2017-03-23 16:39:01 +05:30
Henry Castro
a759a01c7d loleaflet: ensure visible element before getting bounds
Change-Id: Iae66d8d52f4d97b61d861586e5a008c18d15e39d
2017-03-22 22:32:31 -04:00
Henry Castro
f3700400e6 loleaflet: fix the selection of the annotation object
Change-Id: I1bf6b669b768057b7b9943654db79b2966ca3ec3
2017-03-22 21:21:41 -04:00
Henry Castro
0107e0e0d9 loleaflet: handle annotation reply for writer documents
Change-Id: Iff95919d6f413b025ddb386150f458b9ecf2ce88
2017-03-22 21:11:53 -04:00
Henry Castro
e30bcdfcd8 loleaflet: add reply property to the annotation object
Change-Id: I58323dd35380e9cadf25661f85f38e080bbff026
2017-03-22 21:07:48 -04:00