Commit graph

3749 commits

Author SHA1 Message Date
Tor Lillqvist
97adaf935b Don't let 'canceltiles' messages affect slide thumbnails being rendered
Document that the 'id' parameter of a 'tile' message is not (should
not be) used for anything except slide thumbnails.

If we later need some more generic way to distinguish the purpose of
tile requests, need to come up with something else, like a 'purpose'
parameter.
2016-10-04 13:31:36 +03:00
Andras Timar
b5f95c2aed loleaflet: add Insert Footnote, Endnote, Page and Column break to Writer menu 2016-10-04 11:21:10 +02:00
Tor Lillqvist
7a2a1b1b99 Add another FIXME rant 2016-10-04 11:04:36 +03:00
Tor Lillqvist
dba94a9c03 Avoid annoying line wrapping of cppunit output 2016-10-04 11:04:22 +03:00
Tor Lillqvist
f9a6ed93d5 Add FIXME rant 2016-10-04 09:21:20 +03:00
Tor Lillqvist
c46986166c The coding style here is to put 'else if' on one line 2016-10-03 22:31:10 +03:00
Henry Castro
e684089c89 loolwsd: force websocket close if client does not want to close
Even if sever send a close frame, the client could still send
more messages, but no close frame.
2016-10-03 14:36:02 -04:00
Miklos Vajna
3dbaae7f44 Util: avoid unnecessary copy
Change-Id: I773cc9bafc1593e125af2dbcd2471daf4685d125
2016-10-03 08:38:38 +02:00
Pranav Kant
7e57ae5dce loleaflet: Don't add these layers in readonly mode
Change-Id: I17437f53921dc3d5036be4a9650213a7eb0895dd
2016-10-03 11:16:32 +05:30
Pranav Kant
3fa2115fa1 loolwsd: security: Cleanup HTTP download request
Sanitize for some funny inputs.

Change-Id: I450cb5ed6e03e9809308e8f763af2c2a66fcecb0
2016-10-03 11:16:32 +05:30
Pranav Kant
700a310d35 loolwsd: Fix incorrect log messsage
This can be a POST request too.

Change-Id: I673fb94fc8a4b0cc09ed166f04dbad94ca2a041a
2016-10-03 11:16:32 +05:30
Ashod Nakashian
dba4d84010 loolwsd: new per-part tile invalidation unittest
Change-Id: I70c1b3d339bdd6dc017b3e09132e32ea0a2133ec
Reviewed-on: https://gerrit.libreoffice.org/29469
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-10-03 05:34:26 +00:00
Ashod Nakashian
23f7560bf1 loolwsd: fix and enable tile invalidation test for Calc
Change-Id: I105857026507ff3dedd798f66bcebcc111e6c072
Reviewed-on: https://gerrit.libreoffice.org/29468
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-10-03 05:33:45 +00:00
Ashod Nakashian
ce832fbc11 loolwsd: get the invalidated part from the callback directly
By default LOK doesn't provide the part where the invalidated
tile is. The part # is found using API, but due to the fact
that callbacks are processed asynchronously, the part #
may well have changed by the time the invalidation is
processed. This could result in buggy invalidations
where no modification took place.

With the new API flag LOK_FEATURE_PART_IN_INVALIDATION_CALLBACK
the part # is included in the callback, which is parsed
and used to inform the client with the correct part #.

Change-Id: Ibd85764bfdc41ebf1aae490df335bd503284ae91
Reviewed-on: https://gerrit.libreoffice.org/29467
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-10-03 05:32:45 +00:00
Ashod Nakashian
2907d802a5 loolwsd: cleanup and logs
Change-Id: I46eafb970ca144e7eb0837c80d790433cf1e151a
Reviewed-on: https://gerrit.libreoffice.org/29466
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-10-03 05:31:26 +00:00
Henry Castro
4074587a12 loleaflet: the cell view cursor displays user name 2016-10-02 16:46:30 -04:00
Andras Timar
e1e703c727 loolwsd: do not install 'unittest' binary
(cherry picked from commit 60834bfcec39755eebe73fe6a2d272e3a5ae59aa)
2016-10-02 19:01:28 +02:00
Marco Cecchetti
5edb4cb8c4 loolwsd: Calc: core and client could be on 2 different tabs
The check for the current part was done before set view on core to the
one of the sender message

Change-Id: If4b9264c981ecc4e858d23366045e42be603c7c4
2016-10-01 20:07:39 +02:00
Henry Castro
97fa8e45f9 loleaflet: fix error message localization 2016-10-01 11:35:19 -04:00
Henry Castro
2a6a5eab2e loolwsd: error message is localizable 2016-10-01 11:35:19 -04:00
Henry Castro
ef2a8ee99f loolwsd: .gitignore unittest 2016-10-01 11:35:19 -04:00
Jan Holesovsky
2e3f297c8a Add a callgrind target too.
Change-Id: Ib04e3ccd136766f9d8eb4f99e711390cb09eeb31
2016-09-30 23:53:48 +02:00
Jan Holesovsky
9c5967a432 Early break when we have found the highest priority tile.
Change-Id: I47f00dfb67c1a713b1c7fa9fef7a9cc8c59bde00
2016-09-30 23:06:26 +02:00
Jan Holesovsky
cbf9556b0a Simplify the code around priorities and view ordering in TileQueue.
No functional change.

Change-Id: If34747a069032b13d7d9eb232b1bf10cef967afa
2016-09-30 22:38:20 +02:00
Jan Holesovsky
f101b2b7cb Check we get views prioritized according to when the cursor was updated.
Fails with any of e5adf272b8,
d9c90e30fd or
4e7ba53a2b reverted.

Change-Id: I5a9384f20ae1f64e29509ec568670e29c3c4eb94
2016-09-30 22:22:23 +02:00
Jan Holesovsky
e5adf272b8 Search harder for the highest priority tile.
Without this, any cursor intersecting with the tile was treated as the
priority.

Change-Id: I6bc4629620d368ce383900386a00c535255ee133
2016-09-30 22:02:40 +02:00
Miklos Vajna
81a114c47d DocumentRepair: still show the absolute time as a tooltip
Change-Id: I64cbf519e53c2a2ad697deb9932fb7a32e702d25
2016-09-30 17:44:54 +02:00
Miklos Vajna
655915da05 leaflet: bundle timeago JS module
And start using it in DocumentRepair.

Change-Id: I8d2b8af4d2e0dcc7cf8082c9d7adbc633df1c387
2016-09-30 17:12:01 +02:00
Andras Timar
d22cdad721 loleaflet: enable l10n of Update/Delete TOC commands 2016-09-30 16:33:38 +02:00
Miklos Vajna
d0abdee6d5 Move HTTPWSTest::testEmptyCellCursor() to WhiteBoxTests
Which is a unit test, so should be faster.

Change-Id: Id5c2ed705576a1467756ac8dba6e5e434b56f725
2016-09-30 15:52:08 +02:00
Miklos Vajna
38577b74fd Refactor to be able to unit-test Document::ViewCallback()
Change-Id: If07eb89e5d2f45737a8af10803511ab2ee3a07b3
2016-09-30 15:42:50 +02:00
Andras Timar
b4d3bfdcae expose Update TOC and Remove TOC context menu items in Writer 2016-09-30 15:36:29 +02:00
Tor Lillqvist
5b08fe6477 Add handling of dangerously low storage space for local files
Sends the same 'error: cmd=internal kind=diskfull' message as when
disk space for LOOL's own needs is getting full, but only to the
user(s) of that document. We can't in general know whether one
document in the Storage abstraction is located even close to another.
2016-09-30 16:12:16 +03:00
Miklos Vajna
3090981c8a Document repair: expose user names, not only view IDs
Also in leaflet replace the current user with "You" to be consistent
with the statusbar.

Change-Id: If2d76f078eeae3038f8ae17506ae7679f7b23023
2016-09-30 14:21:14 +02:00
Tor Lillqvist
3cabf7c9c1 testCalcEditRendering is not working so bypass it for now 2016-09-30 14:06:13 +03:00
Tor Lillqvist
9511bbda71 Re-factor Util::checkDiskSpace() into separate parts
We will later want to just to a disk space check for the file system a
file is on, without registering that file system for periodic checks.

Adapt callers to keep working like before.
2016-09-30 13:54:51 +03:00
Pranav Kant
ec88a53072 loleaflet: loleaflet-font for userlist items too
Change-Id: If2c96d9d70a84bac1e75816f07bb7da8ff2642f5
2016-09-30 15:49:24 +05:30
Pranav Kant
7b60a9e3f6 loleaflet: Show error message dialog on diskfull
Set the mode to viewonly after the error so that user can still
see the tiles downloaded from the server, but cannot interact
anymore before server administrator fixes the disk space.

Change-Id: If03f4fabe93458672a631c020d09dcebecbb955c
2016-09-30 15:22:12 +05:30
Pranav Kant
42fbfa936c loleaflet: Use 'error' event to open the alert dialog
Change-Id: I8f1ca3d896027755fe1291cb227ded102e57e112
2016-09-30 15:22:12 +05:30
Miklos Vajna
c9346e14b1 LocalStorage: differentiate between multiple localhost users
Hopefully useful in general, but currently I need this to see if view
ids are mapped to the correct user names even with file:/// URLs.

Change-Id: Iec7d552ee0b0d53738040d868e49ecb7e9c10843
2016-09-30 11:03:05 +02:00
Jan Holesovsky
bf80260a28 Let the make fail when the unittest fails.
Change-Id: I66a7e82b864f1c13c1c145c27f019b832c38bb62
2016-09-30 10:53:22 +02:00
Jan Holesovsky
0b5fa973da Run unit tests (that don't require loolwsd) during the build time.
Change-Id: I2b1ea4fb5e6dcd8e4eb5f3890507f541c1457b39
2016-09-30 10:43:51 +02:00
Miklos Vajna
8c2446d15b Revert "httpwstest: add tolerance, so that testCursorPosition actually passes"
This reverts commit 3629113e59. This
workaround is no longer needed, now that core.git
b32b6c09d190effbe29389a87a80df36007d2e99 (sw lok: disable pixel
alignment of cursor logic values, 2016-09-29) fixed the root cause.

Change-Id: I208e18517158cf55b143d1018ad0fd933db3accf
2016-09-30 10:20:57 +02:00
Miklos Vajna
827d5ed9c8 DocumentBroker: it's enough to build that temporary string once
Change-Id: I253874fefdb2dfe9bb22a8b3bef641499a49dcc9
2016-09-30 09:29:17 +02:00
Henry Castro
b4ba3c9c55 loleaflet: fix mege mistakes 2016-09-29 17:57:17 -04:00
Henry Castro
e766e82f3d loleaflet: fix undefined variables 2016-09-29 17:41:10 -04:00
Henry Castro
3fcde8be83 loleaflet: fix show dialog error
Conflicts:
	loleaflet/src/core/Socket.js
2016-09-29 17:38:48 -04:00
Henry Castro
6f7d67a204 loolwsd: control frames must have a payload of 125 bytes 2016-09-29 17:36:43 -04:00
Pranav Kant
d5f8c5b2e6 Change main websocket url for consistency with other urls
From
/lool/ws/docurl
to
/lool/docurl/ws

The main purpose behind changing this and other related urls is
to help in load-balancing. The first two parts of the URL can now
be used in a hash-based load-balancing algorithm which decides which
slave gets to serve the requests. Requests such as insertfile,
downloadas need to end up in the same slave in which document was opened.
/lool/docurl/ i.e first two parts of the URL are constant for all
the requests that should be served by a single slave.

Change-Id: Ibc605ca1251957b8b32b376cf19b78f6178fadfa
2016-09-30 00:50:57 +05:30
Pranav Kant
085a07b3e2 loleaflet: Ignore view messages before 'viewinfo' message
Change-Id: If0f759976f13a76c54c068a18bab5e07818cb86e
2016-09-30 00:33:58 +05:30