Commit graph

3552 commits

Author SHA1 Message Date
Ashod Nakashian
4b28a9a4fc loolwsd: forward redline table update notification event to the UI
Change-Id: I45df2a1aaf826301a113f8cf0a8c609d46b794a7
Reviewed-on: https://gerrit.libreoffice.org/28304
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:46:37 +00:00
Ashod Nakashian
169fb52a4b loleaflet: remove view selection when closed
Change-Id: Ia822a00bab13be12e327aee936ed9fb0d3d211b0
Reviewed-on: https://gerrit.libreoffice.org/28303
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:45:24 +00:00
Ashod Nakashian
a28b832309 loolwsd: proper ChildSession cleanup
ChildSession cleanup is tricky because it needs
to be cleaned up when the connection is dropped.
The ChildSession itself needs to initiate this
cleanup from Document.

A new approach simplifies the design and correctly
broadcasts remview to all other connections so
they would be able to cleanup visual elements.

Change-Id: I78fd01fb42b801913534c858324c16dd7ad6451d
Reviewed-on: https://gerrit.libreoffice.org/28302
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:44:24 +00:00
Ashod Nakashian
98db6b8518 loolwsd: logging and comments
Change-Id: If58cfd8ac60b95119bef752ff4ebae295fc564cc
Reviewed-on: https://gerrit.libreoffice.org/28301
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:31:52 +00:00
Ashod Nakashian
c98af7c5a0 loolwsd: Poco HTTPRequest and co are not thread-safe
Change-Id: I5b7a290651a51f117da1dd972f4c24bdebd2b3b2
Reviewed-on: https://gerrit.libreoffice.org/28300
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:30:40 +00:00
Ashod Nakashian
e65535b7cb loolwsd: configure documentation correction
Change-Id: Ia58ea1b87b1d82512f7107f2046c30bc54e4976a
Reviewed-on: https://gerrit.libreoffice.org/28299
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:23:48 +00:00
Ashod Nakashian
dd4ccbafa8 loleaflet: make admin graph container just wide enough not to trim the labels
Change-Id: I5ecc22b9dc9d09a3129c0d948ac51c3fd7e1447d
Reviewed-on: https://gerrit.libreoffice.org/28298
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:22:57 +00:00
Ashod Nakashian
a5602db8f4 loolwsd: formatting
Change-Id: I2f2cac98a0401a43ef919ed2b05c79db57d1d112
Reviewed-on: https://gerrit.libreoffice.org/28297
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:17:37 +00:00
Ashod Nakashian
39a1fd0add loolwsd: Document unloading doesn't hold Document lock anymore
Change-Id: I4be051b9a24a7a971211e6f7159d959c5f504c0e
Reviewed-on: https://gerrit.libreoffice.org/28296
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:15:25 +00:00
Ashod Nakashian
59b88dab49 loolwsd: don't expose ChildSession mutex publicly
The only usecases for using the ChildSession mutex
are during tile rendering in Document. For these
the lok::Document mutex is perfectly fine.

Change-Id: I888e51d7885b05081858bcd55212abe45925e732
Reviewed-on: https://gerrit.libreoffice.org/28295
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:04:53 +00:00
Ashod Nakashian
16f15864d1 loolwsd: no member of lok::Document should take lock
Since often multiple API functions are invoked in sequence,
which should be done atomically, there is little gain in
locking explicitly in each call.

The caller should take the lock to insure the call is safe.

Change-Id: I3dd9b2a7763c6b36002d22191f98f2b6c2aeaacb
Reviewed-on: https://gerrit.libreoffice.org/28294
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:03:03 +00:00
Ashod Nakashian
415796d69a loolwsd: unittest fixes
Change-Id: Ia08135bfaadbf4f59b658f7563ac4d40e6abacac
Reviewed-on: https://gerrit.libreoffice.org/28293
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 05:00:28 +00:00
Ashod Nakashian
119d2c862c loolwsd: don't render tiles when no views exists
Change-Id: Ic7bc72384372961752dc68671b0dd20f592cb669
Reviewed-on: https://gerrit.libreoffice.org/28292
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:59:25 +00:00
Ashod Nakashian
3af0d69d22 loolwsd: isTileBeingRenderedIfSoSubscribe -> subscribeToTileRendering
Simpler yet descriptive function name and better logging.

Change-Id: Ic903197d5772b7994ffa8136cfae771deee3a24a
Reviewed-on: https://gerrit.libreoffice.org/28291
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:54:29 +00:00
Ashod Nakashian
bea85403ea loolstress: non-static member naming convention fix
Change-Id: I33eebfcde89e39f39491edad32d3eab50761b073
Reviewed-on: https://gerrit.libreoffice.org/28290
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:44:45 +00:00
Ashod Nakashian
b9a2d7fcaf loolwsd: unit-test misbehaving client that connects without loading
Change-Id: I1cef429a9310450c1b317f65475536db5d8a8306
Reviewed-on: https://gerrit.libreoffice.org/28289
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:38:19 +00:00
Ashod Nakashian
716b28f4de loolwsd: forward declare TraceFileWriter and move out of header
Change-Id: Id1be0eec0d8a3e9963f986b05ad5426ddb6866c4
Reviewed-on: https://gerrit.libreoffice.org/28288
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:24:22 +00:00
Ashod Nakashian
60e7c0b50e loolstress: usage
Change-Id: I04df4341dbe669b35c0c5cad6e17cd08a8faa05c
Reviewed-on: https://gerrit.libreoffice.org/28287
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:23:36 +00:00
Ashod Nakashian
eb38d7697b loolwsd: don't unload views not loaded yet
Change-Id: Iee676849cc2b9ac4f0e518e5730e921687c3a42d
Reviewed-on: https://gerrit.libreoffice.org/28286
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:22:34 +00:00
Ashod Nakashian
3469fd9537 loolstress: seemingly support plain text and .gz trace files
Change-Id: I6eb6c8f0b6476c8d0af7bf90ccf15712df0dbbd5
Reviewed-on: https://gerrit.libreoffice.org/28285
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:20:30 +00:00
Ashod Nakashian
006a49007c loolwsd: sync re-activating views by replaying state messages
Change-Id: I0ce37ca75f10493a90107e93c253edf084a15f7f
Reviewed-on: https://gerrit.libreoffice.org/28284
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-22 04:13:54 +00:00
Henry Castro
23a71ac35b loleaflet: add L.Control.MetricInput 2016-08-21 16:08:40 -04:00
Pranav Kant
df03394223 loolwsd: Don't try to unload if underlying doc pointer is null 2016-08-21 22:40:57 +05:30
Pranav Kant
4fdfa3a1c9 loolwsd: Separate global and document callback 2016-08-21 22:40:54 +05:30
Pranav Kant
86891498a9 loolwsd: fix leftover confusing comment
Call to getStatus is gone in
2744caf97b, so there are no
"arguments" anywhere now.
2016-08-21 21:19:21 +05:30
Pranav Kant
77be7d6e18 loleaflet: Prevent double-decoding utf8; fixes context menu
Text messages are already utf8 decoded, so we only need to decode
if its a binary message, not otherwise.

This also fixes context menu invocation on the UI as in some
cases double-decoding of utf8 strings would throw a URI malformed
error. This problem started to appear after we explicitly started
sending context menu payload as text message rather than binary
message in ecd33e1b07
2016-08-21 19:41:33 +05:30
Miklos Vajna
e0cd11848a Update bundled headers 2016-08-19 16:55:09 +02:00
Andras Timar
a68274c1de loleaflet: spinner l10n 2016-08-19 14:34:30 +02:00
Marco Cecchetti
26fa0651d6 loleaflet: initial support for multiple cursor in Calc 2016-08-18 10:08:26 +02:00
Miklos Vajna
f85dcba905 QueueHandler: use std::move()
Change-Id: I849a273a68986fb665dc7c1d03c54fd7dcf9b488
2016-08-18 08:19:00 +02:00
Henry Castro
2757adc3c6 loleaflet: add dblclick row/column to process optimal height/width 2016-08-17 09:15:42 -04:00
Miklos Vajna
30f1a43615 UnitHTTP: avoid binding dereferenced null pointer to reference
As it's undefined behavior.

Change-Id: Icd172f23fbeb0ef9b9d792ffb39b08b361fa7844
2016-08-17 08:39:19 +02:00
Pranav Kant
f41b947960 loleaflet: Disable pointer events on graphic marker boundary 2016-08-16 22:43:48 +05:30
Pranav Kant
9ec2aba359 loleaflet: Disable pointer events on cell cursor
otherwise, it would invoke browser's context menu upon
right-clicking on the cell cursor (border of the cell; on black
lines)
2016-08-16 22:41:31 +05:30
Andras Timar
6380deb5a8 loolwsd: disable command trace when it's missing in config file 2016-08-16 11:24:22 +02:00
Andras Timar
e029d7ab14 loolwsd: typo exlcude->exclude 2016-08-16 11:15:49 +02:00
Andras Timar
ab1d022598 fix jake lint indentation errors 2016-08-16 10:59:36 +02:00
Pranav Kant
449861fa12 loleaflet: multi-view; better handling of polygons 2016-08-16 13:34:42 +05:30
Pranav Kant
eac8f32eda loleaflet: Prevent creating Polygon instances unnecessarily
L.Polygon can take array of latlng pairs. Lets pass the full
array instead of passing each array element one by one and
creating Polygon instances everytime.
2016-08-16 13:34:41 +05:30
Pranav Kant
1b92b481ee loleaflet: reference; add missing method to PolyUtil 2016-08-16 13:34:39 +05:30
Pranav Kant
93c114d0f4 Update README 2016-08-16 11:17:00 +05:30
Pranav Kant
e86e7a73f8 loleaflet: performance improvements in build process
Minifiying the js code was taking too much time. Minifying is not
really needed on developer's machine, so lets disable it by
default, otherwise it gets annoying during development having to
wait for so many seconds for it to build.

A simple 'make' now means no debug-info and non-minified
bundle.js. To add debug-info(source-maps), do 'make DEBUG=true'.
And to minify, similarly use the MINIFY=true variable with make.

'make dist' forcefully minifies the js code.
2016-08-16 11:11:16 +05:30
Miklos Vajna
c47c4fe5a4 Log: clean up unnecessary channelConsole
splitterChannel can be a raw pointer, at the end it'll be assigned to
channel, which does not call duplicate() on it. As a side effect this
fixes the use-after-free warnings reported by clang-tidy.

Change-Id: I8f5d7c9f6c8f280c9f1222c2ab6d7b0fddf64a30
Reviewed-on: https://gerrit.libreoffice.org/28145
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-15 16:49:20 +00:00
Pranav Kant
6df1c4c6f7 loolwsd: fix impress; get viewid after initializeForRendering()
For impress, call to initializeForRendering() *changes* the
viewid, so there's no point in remembering the viewid before call
to initializeForRendering().
2016-08-15 21:12:03 +05:30
Pranav Kant
82e1769fe8 loleaflet: textviewcallback support; colored text selections 2016-08-15 20:33:30 +05:30
Ashod Nakashian
a805b06874 loolwsd: fix unittest regressions
Change-Id: I502c87a2c6eb3d34c0e137c774c1c77bec8f50d9
Reviewed-on: https://gerrit.libreoffice.org/28144
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-15 12:12:39 +00:00
Miklos Vajna
955a2d5577 LOOLKit: fix -Werror,-Winconsistent-missing-override
Change-Id: Ia4ffbb32730880c188f9d9bf9b14d3e3daebc272
2016-08-15 09:47:31 +02:00
Ashod Nakashian
daad00812d loolwsd: refresh views on UI re-activation
Change-Id: I78d04abe939a91e56cb06f89184e651e7946b28b
Reviewed-on: https://gerrit.libreoffice.org/28134
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-15 03:19:15 +00:00
Ashod Nakashian
5af1f18e36 loolwsd: convert function-object callbacks to abstract interface
Change-Id: Ia2e832659f8deddd55b8be6507c2d7406f110085
Reviewed-on: https://gerrit.libreoffice.org/28133
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-15 03:18:26 +00:00
Ashod Nakashian
59ed1bd2ff loleaflet: new command remallviews to remove all views
This command is intended to be used when re-activating a
client. It is intended to be sent prior to sending the
list of active views, including the re-activating
client's own view.

A client UI must maintain its own view ID and info
when receiving this command.

Change-Id: Iea58c01fb30af139888e746b5cf9e7ba7e7eeab1
Reviewed-on: https://gerrit.libreoffice.org/28132
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2016-08-15 03:15:47 +00:00