It internally handles the mouseup. So we don't send it again.
Without this change, context menus can't behave normal. Because mouse pointer is set to somewhere else with the mouse up event.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I719565b1ce192045250f9217e971725d8cc1003b
Maintaining the state is cheap & easy compared with rendering it,
so toggle rendering - but maintain state in debug mode as now.
Change-Id: I06b29c8a2a8652a63e9ca1e4b7dc31bfe7cafc1e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Share a single emission function. Events are re-parsed and
emitted and adjusted in ClientSession; JSON escape event names.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If489d516bf20d5ec34cfe61f7e4fb09cf2e14bf2
When building the iOS app, the %SAVED_UI_STATE% does not get
replaced with a quoted string during the build and the resulting
unquoted string causes document loading to stop.
Also, eliminate warnings when running in Xcode by adding missing
CFBundleTypeRole entries in the iOS app's Info.plist.
Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Ie398955241a078be45af28e54c49387ff673870b
Split tools into categories,
Make Tile Overlay toggleable,
Adjust which tools start enabled,
Comment out non-functional tools,
Adjust some names
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ic973671a3c323f10d7f95918459ffc91a2f5c35d
Core side seems to handle the mouseup event automatically for the right mouse button.
When we send another mouseup event, selected text can get unselected and context menu can't find a selected text.
Issue is:
* In Impress, select a text in a textbox and right click.
* Context menu cut operations doesn't work.
Cause:
* We send the right mouseup twice, the second event unselects the text and sets the cursor position to somewhere else.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Idae749da42443ccdd7ef2fc795b042536fae0db6
- before this patch when socket connection failed, we used to show the
same error for socket connection failure and send the
'Action_Load_Resp' with same errorMsg
- now we show/send different message for unauthorized and loading
failure
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I71b1b7f8e2eca93790d068583370787825911a41
If we had very long or tall cell - maybe bigger than a screen
on every selection we tried to show it on the screen what
caused view to jump. If cell is bigger and partially visible
left view at the same position to avoid "jumping".
Steps to reproduce:
1. merge many cells - longer than one screen width
2. scroll in the middle of merged cell
3. select the cell
Result: jump to the begining
Expected: no jump if it is paritally visible
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I04da5cd346f175728222888a039a796b271e00d1
This fixes view jumps in the Calc when some user tried
to drag a selection but did it very quickly so it was
interrupted by the _mouseOverTimeout callback.
Timer was introduced in commit 72c407e0ed
loleaflet: support mouse cursor calback
But we noticed the issue recently. I remember that dragging
the selection was not working some time ago, it is
possible that it was fixed and because of that we experience
this bug.
What it does is that it stops dragging mode in half-done state
so then other views sometimes use the leftover data.
To be 100% fixed it should be also protected on the core side.
Steps to reproduce:
1. Open calc in 2 sessions
2. A selects some range of cells (for example 3x3)
3. A clicks inside selected range and holding the mouse
button does rapid move to drag the selection (move
the content of cells) - it has to be done very quickly
< 100 ms after initial click
It is done properly when you see on the screen selected
range and cell selection, but the two are not overlapping
4. User B goes somewhere far in the sheet and:
- changes font size
- or selectes some rows, deletes them, then opens right-click
"row height" dialog, press ok
Result: User B jumps to the selection of user A
Expected: no jump
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia35377771df6b04584eebb76c25290482b7a4b93
* These changes are made primarily for reading the hyperlink data from the document in readonly mode.
* Added readonlyclick event.
* Added readonlyhyperlinkclicked event.
* And the handlers for these.
When user clicks on document in readonly mode, a readonlyclick event is sent to the server.
Childsession checks if there is a hyperlink at the clicked location.
If so, the information of the hyperlink is sent to the client.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9c104a1ec770491725337b9bbb1e2d1c2851321b
it did not make sense to check for selection if we are unselecting before selecting
problem:
when already selected comment try to modify,
it will not rearrange replies in the thread this caused
overlapping of the comments and bad user experience
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I276c34301b45951a7051018770e21b4970603861
use strict datatypes for the properties where possible,
also allow to add new properties dynamically
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia2eb850f61031f91b0e37339475e1ca4e768dad1
this caused problem when new doc is loading and we are settings up comments,
but they are not initialised and marked as being in editing.
i.e: this will cause problem with showing reply count(in collapsed view) initially
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia688ca0bfc37dd925bd74dc5826d43fdb37c81db
- in Compact/Classic mode typing text are dark in darkmode
To reproduce:
- change to dark mode and select Compact mode
- type in input field of Font or in Font size
- without this patch color will be dark in dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4510001cfdf26acf8419eb0aa4ee3611b0a51b09
When Pivot table dialog was used and we drag and drop
elements from list to other list in Firefox - then
we sent userinactive message because we lost focus of
a window. Don't do that.
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I03f1b8a72e4f318034569d4fffe496f32c5a8a51
I noticed that it directly modifies this._visibleCursor
which should be our own cursor. So it was not clear if
modifierViewId === this._viewId check if something left
from the past or that message can be received with
different viewId...
It seems that received viewId only tells us who "triggered"
the cursor movement, but position in the message is still "our".
It is used with different viewId in Writer but not in Calc.
protocol.txt comment about the message:
The payload contains a rectangle describing the cursor position
and the id of the view which triggered the invalidation. JSON payload.
and seems to be introduced in:
commit ffd7151443
Date: Sun Apr 8 00:00:53 2018 +0200
Writer: View jumps to cursor position even if it is moved by an other view.
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idf2598221845e15effe576a94bb1d39759ae7d58
- Fixed filter by color options which had Checkboxes
- it should have radio buttons same as we have in LO core
- it also makes sense because we only need to apply on filter by setting at a time
Steps to check patch
- Open .ods file
- add some dummy data in diffent rows but column should be the same
- click on the top cell of dummy data
- got to `DATA` tab and apply `AutoFilter`
- open auto filter popup and select filer by color
- compare previous version with the current patch
- check same thing in LO core
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I00b4d84e5117b3c1f05fbc37c61331d2c3bc2a31
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
problem:
1. Duplicating slide with comment will not have any comment
2. Rearranging slides, causes comments to stay with its previous slide location,
i.e: if earlier comments were on the first slide and they are rearranged to be nth slide,
comments will be displayed on the first slide
3. Deleting slide, displays comment on the next slide
all these problems are just display problems in online, if you reload the document,
comments are displayed correctly.
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie494761802f133f5f433053456edfd7d55d1312a
As discussed [on Matrix](https://col.la/suppresseslintindevelopment) the
set of things we want to pick up in CI and development are different.
Specifically, there are some things that only get in the way during
development but should not be allowed in merged code. Examples are
'debugger' statemens, dead code (e.g. resulting from 'if (false)') and
unused variables.
After #7822 there are no more eslint warnings, so we can use it as a
separate state for these issues that should only block in CI.
This commit make make check run eslint and fail if it receives any
warnings, and changes those 3 errors so that they only emit warnings.
It's expected that there are more annoying warnings which I've missed,
if you have any please make a followup change!
This commit explicitly does not deal with formatting-related
issues (e.g. requiring single quotes for strings in eslint) as though
they can be annoying there's no reason why they should change between
development and master... another followup to improve linting experience
could be to use an autoformatter so the computer fixes the formatting
for you, however that's out-of-scope for this commit
Change-Id: I036afac5ef5056a9cc2effc21e31165aa1436ad2
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
- we need to remove 'tab-drop-area-active' class
after a sheet tab is dropped, otherwise drop
zone indicator will still be shown after dropping
- this fixes the bug from f8433d323d2f49852501961c7949300b4a59a512
Calc: improve drag&drop functionality of sheet tabs #7846
Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Iff7ea455452c431907cc7534cbd111e7b4f037d8
This relies on core change I5e6c93c64af0d201a8ec045fea5546e189baca74
(https://gerrit.libreoffice.org/c/core/+/160313) as the logic to keep
the cell focused is from there.
Here we set the new option when there is an onscreen keyboard hint given
by ui_defaults or a postmessage. As ui_defaults are set at page load, we
need to wait to send our message until we're initializing everything
else to set our options. Additionally, we need to use the socket
directly rather than sending this through the map so that this bypasses
things like readonly mode
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ie6d80c0e1ebca607b9d705b673ab8008fae39260
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
- drop zone indicator added to the left of all tabs
- additional drop zone indicator added to the right
of the last tab
- added drop zone container at the end of tabs
for the last drop zone indicator
- div#drop-zone-end-container element also adds
a space to the end of the tabs so that the last
tab can be seen easily after scrolling to the end
Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I25a87bc1798b94c5f294532d308cd46292ef1795
Touch unification (b3bff28bede07a48cdecefcda14a6fc9da86e4bb, change ID
I9016fc15ad3ccb3664af348fdcdca006495b0778) was a rework of the input
system to better support touch devices, but unfortunately it caused some
fairly serious regressions. This commit fixes the following:
- Triple/Quadruple clicking was no longer recognized on non-touch
devices.
- There were some issues recognizing wrapped events
- Pens were considered to be touch devices, but this broke some
remote/virtual machine setups. It's possible that this change will
cause a regression for apple pencil users. I plan to get an Apple
pencil to test whether preventing pens from being touch devices breaks
the Apple pencil workflow instead
- manualDrag was taken to mean "is on a touch device". This is only
almost true, causing some input to be incorrectly ingnored when it was
not
- manualDrag and _manualDrag were confused. They affect different
things, and we now recognize this
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Iab0d3bcca588eaed14469597868a9c4e2dcf8488
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
They allow respectively to switch to fullscreen, or to start the
presentation in impress in fullscreen
Action_FullscreenPresentation can get the following arguments:
- StartSlideNumber: the slide to start at
- CurrentSlide: start at the current slide
The options are exclusive to each other. StartSlideNumber takes precedence
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I4d97eadf8c119e70e5738df4063d209feb5db793
show() can hide modify textbox, this broke comment autosave in impress,
but as precaution show doesn't need to be called on newly added autosaved comments
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I13fdeb265f46cb9b8786f62a2d6e7e5c4e492f00
To not depend on external objects to store information.
Also use more typing.
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I410b6679ef5e2a7c4f5e73217d5062864a73bc4c
This reverts part of commit 93bdcc349b
Annotation: revamp comment autosaving
Let's keep it less changed from the previous stable version.
This doesn't seem to have any impact.
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5261b4c8e78a9310884017bf314d720265892fbd
- we need to check if received comment is "our" autosaved one
- without that we were showing comments from others on the
screen when we were in "autosaved mode"
- remove "interval" to make it more deterministic
This fixes regression from commit 93bdcc349b
Annotation: revamp comment autosaving
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0319de0eea16e715e799a6ac1163d78cc1a07654
if (command.viewid) will not allow set to 0.
This is fillowup for commit f3baeb25b19d8a6200858ecaafe56314836ff73a
Update viewId in Writer after recover from idle
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4b8d40c2b7aa122e0f4710261d10314a25d521fe
now as we only allow one comment to edit at a time,
we don't need to check if any comment is being edited,
we can hide all comment except the one being edited
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibee2b61fc6ba873231a05e5e1d2dab210491c68f
from idle
The following scenario was affected:
- user A and B both goes idle
- user B starts typing
- user A reconnects, all tiles updated by user B were not getting
reflected for user A
Mismatch of canonical ids was causing the issue. On reconnection,
tilecombine messages were sent before uno:ChangeTheme can update the
canonical id on server side, therefore the received tile cache from server were
from old canonical id 4a8974d107/wsd/ClientSession.cpp (L1379)4a8974d107/wsd/TileCache.cpp (L482)
By reseting the previousTheme on connection we make sure there after
canonicalidchange we invalidate all the tiles
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I874bfe0bd71d176bacf0c7aa768e49613535ebd5
Signed-off-by: Rash419 <rashesh.padia@collabora.com>