Partial revert of "reduce white flicker when zooming" patch for calc
desktop case. Without this revert on zooming in desktop calc, there are
remnants of previous zoom grids on the canvas till just before the
redraw. This is very noticeable when there is a cursor active. This
needs more investigation for a correct/better fix.
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I8b0b99a73188d1b79f4fd8ff035ae802703ef8fd
(cherry picked from commit 1e9e199db4ad2d969bfa0ef80e4f9da16a9fa1e6)
Move the code that makes the hidden svg-overlays/markers visible again
to after when the map view is set with final zoom.
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I60aa03593b5428e6c2bb5386e1ac000b1cb23ade
(cherry picked from commit e737291fc68365cd5194d76654d6eda02b297f92)
Fix description:
Before this patch when zoom is changed whole canvas is cleared and the
tiles are painted. This causes a white flicker when tiles take some time
to arrive and get painted after the canvas is filled with white. To
reduce the effect only clear the tile area just before they are painted
when they arrive.
In case of writer and impress there is the complication of document
content area not being the same as the view area. So we need to still
clear the "margins" outside the content area in that case.
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ib9d6c41fee0b1624da6280f4f9e3d8f85756e375
(cherry picked from commit 577d2ceefbe0d9400924f372b1699de0e00b5495)
Problem description:
Currently we have a fake animation after pinch zoom animation, the
keyboard pops up just after the pinch zoom ends.
Fix description:
To avoid this lets disable the text-input element for the scope of the
"fake animation + map-view setting". Rename the map state
variable from "_inZoomViewPanning" to "_ignoreCursorUpdate" and
introduce [enable|disable]textInput methods which makes the intention
clear and could be used elsewhere when we need to disable onscreen
keyboard and ignore cursor update messages.
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: If49c83cd7e8172845aee362ba8b37c245fe4a946
(cherry picked from commit 939ca55d22828aedf172f7134f227de01dde3c09)
Fix description:
Before this patch in the final frame of the pinch zoom animation we draw
it at the 'final integral zoom' but this is perceived as a sudden jump
from the last pinch zoom factor to the final zoom. To improve the UX,
lets add a linear animation from last pinch zoom to the final integral
zoom. Meanwhile lets also initiate tile fetch for final zoom and center.
Also ensure that no tile painting or canvas clear happens while animating.
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ib542cd712704876b5164e7c6bdb9a7782b58efd9
(cherry picked from commit e790ed9439f10cd6a405e15dd6098519b74ce58f)
It caused a crash when opening some PDF files, for instance.
Change-Id: I85515e2e14ffac8928714d218cd2353df228ff4b
Signed-off-by: Tor Lillqvist <tml@collabora.com>
- Remove duplicated of "Field" (Fields dialog)
- Retain bigtoolitem
- Remove menutoolitem with label
- Fix alignment of remaining field items
- Group it in two groups
- Vertically so to use notebookbar space more efeciently
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I40f74dbf7818d19ddead0d7e36f1f42f3ce59032
- stack odg and pdf options, allows for better placement of future options:
- svg
- tiff
- Add download as png and respective icon
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I81b11a79d80898aca6288cea6e4e02559d9a0c51
- Make it as bigtoolitem instead (to be consistent with the other apps)
- Make use of command
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I801802d81ba558f3778ea31a95d183c28bc70302
- Icon and label occupy a lot of horizontal space
- Dramatic in smaller laptops
- Limit width of that long label without increasing height
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1e78257f0c6c166372b585b2a5a47e2811f54129
In sequence of issue #1285:
* https://github.com/CollaboraOnline/online/issues/1285#issuecomment-764556056
* @kendy we are actually using the right variant
which is the one used also in core tabbed layout but it also has those
ellipsis
* Removing the ellipsis in the most visible case (File tab) for Print...
and Save As... shouldn't be problematic as it does not had any extra
condition and instead just slices the string under their respective
object's property
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I04b01d8fb8b3ecb242fa684019a293cb5aaf51b8
New section has been wrongly back-ported and was being set inside of
existing group instead of a new one. This was resulting in a column with
3 elements and thus the whole notebookbar content was vertically
misaligned.
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I21683caf5d2d47b825b4c11eabdea98e516364e4
- Display ellipsis inside of #command element when a library is still
not selected
- To communicate clearly to the user that there is still stuff to be
selected
- But also to hide that visual (ellipsis) when there is content to show
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5d0a1e627de9e83908c2d79e0d52abd428f0280c
- Warning
- File name: Increase contrast
- Add icon to dialog
- Make it visible when a command is selected (commands get border)
- Use consistent radius
- Use consistent colors (CSS vars)
- Add bottom border to each li so to make it clear that there are more
elements (and that is a list) and that it can be scrolled
- Avoid fixed height for Commands list
- it was resulting in odd extra space when a library group has only
one macro
- Macro Name: Use ellipsis in the content until the use selects library
- Add parent id to css rules( #MacroSelectorDialog )
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0e5aaf40e143b708104462da39b506feb29f6569
Already been set properly with
e23bf9fb30c75228d9a435504c98eddbabc322dd
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I731ba3883144e4fb34015434fa876d06be9d96e8
in the sequence of the idea started in
https://github.com/CollaboraOnline/online/pull/1212
- by adding padding to unobuttons (independent of its status)
- do not really solely on margin
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iad3389226297b7a8504def148b5d869db936fd19
On Apple devices shortcuts like Copy, Paste, etc use the Cmd key
(also known as the ⌘ key), not the Ctrl key. We shouldn't check
KeyboardEvent.ctrlKey but e.metaKey. Introduce a function _isCtrlKey
that checks the proper property depending on platform.
That Cmd-V still doesn't work for plan text put on the pasteboard by
another app needs to be fixed in core.
Change-Id: I4e8a05afaed0bde193d00a7ded52fcebf3536b5f
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Scroll bar animation was flickering after mouse leaves its area.
Signed-off-by: Gökay Şatır <gokay.satir@collabora.com>
Change-Id: Ie4d96d98dee806e6b02c8c8a23dd4eaccabbf7b0
Fix description:
The view jump is because after the zoom animation has ended, the map
center is set to the pinch center and not the last frame's center. The
patch computes the last frame's center and uses that to set the map
view's center. This only fixes the view jump and not the flicker after
the animation which is an independent issue.
Caveat:
Since we show only one discontinuous frame at the "final allowable zoom"
at the end of the zoom animation, there will be perceived view jump at
the end of the animation itself. This apparent if the user pays
attention to the contents of the document at the corners of the view
before and after the is pinch stopped. This jump is more pronounced if
the pinch zoom factor is much different from the "final-zoom".
Note: The final zoom is determined from the final pinch zoom as
var finalZoom = this._map._limitZoom(zoomDelta > 0 ? Math.ceil(this._zoom) : Math.floor(this._zoom));
--
A possible solution for this problem is to render a few frames at the
end of the animation that are closer to the "final zoom" from the where
the pinch left off.
--
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I0a6989248970aeb60acc451d9b0bc7a08a0dbf06
(cherry picked from commit 5b2daac61edb78150ad9700ce11fab8bdfb7dd27)
Move the ODF entries for the ODF file types from the
UTExportedTypeDeclarations section to the UTImportedTypeDeclarations
section in the Info.plist. This, for some unclear reason, is necessary
to make ODF documents not appear greyed out for folders provided by
the Google Drive file provider extension. Sadly the documentation of
exact semantics of the Info.plist file leaves much to be desired.
This fixes https://github.com/CollaboraOnline/online/issues/1509
Change-Id: I7ff35cf9f6c717d1579adc7a4d7350f78d7bee8e
Signed-off-by: Tor Lillqvist <tml@collabora.com>
When user moves cursor out of the scroll bar area or at the end of a
scrolling event, scroll bar will slowly disappear.
Signed-off-by: Gökay Şatır <gokay.satir@collabora.com>
Change-Id: Ic1c993869bdee3be342330c847b6d89e66784f69
User can set stopping events, duration or they can directly stop, reset
the animation.
In order to use stoppingFunctionList, canvas element should get events.
Currently, CanvasTileLayer is calling callbacks of
CanvasSectionContainer.
So if one needs to use stoppingFunctionList, they should update _mirrorEventsFromSourceToCanvasSectionContainer
function and use "element.dispatchEvent" feature. We need this because
of leaflet.
I didn't change "_mirrorEventsFromSourceToCanvasSectionContainer"
function because it would have to be tested with different browsers. But
i tested the dispatchEvent feature in order to test
stoppingFunctionList.
Signed-off-by: Gökay Şatır <gokay.satir@collabora.com>
Change-Id: Ifb335d433af4656294223fa6c16378819abbb950
And explain the use of linear search in header().
Change-Id: If6c39bffa738861d0c86684f9560ed6e4a6970e1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
User-Agent is designed for client-side use only,
in http requests. For servers, the Server header
is designed to announce the server name and version.
This tries to normalize the use and documents
the proper intent and usage.
Change-Id: I42d68d65611cab64c45adf03fe74f9466798b093
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
In many cases we write directly to the socket
outgoing buffer directly. The only way to flush
this buffer to the socket is to use send(),
which is artificial if we don't have any more
data to pass to send().
This makes it possible to safely call flush()
and, if there is buffered data, we flush it
to the socket.
Change-Id: I025e7ba5d1898e72dd0001547e104642608ab20a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
This adds writeData() member to write into the output
buffer of the socket directly, instead of serializing
into a string and then copying it over to the buffer.
Change-Id: I42aaa23e96a6120c738bc0bb36bc01f4ed5e70c5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>