summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-09-16tilecombine: should pass back oldwid to save bandwidth.feature/calc-canvas2Michael Meeks1-5/+17
Don't re-send un-changed tiles that we can detect easily. Also avoids some PNG compression / CPU overhead server-side. Change-Id: Ieca05680d9194e0bfc177b8db338010e5ffafe75
2020-09-16calc canvas: use the right canvas size in core pixels to clear.Michael Meeks1-1/+1
Change-Id: I058cabd4daa51eb7da1f1ee33e59464692f00331
2020-09-16calc grid: re-render the canvas when we get grid details.Michael Meeks1-0/+1
Change-Id: I3d1d1485e561d8c807daa0dfe0a9f2cb5651d31b
2020-09-16calc grid: fix this interleaving.Michael Meeks1-2/+4
When the span starts in the middle of the view don't render backwards. Change-Id: Icc97fef88a65c0ca83167ddb72c03bece9a8e047
2020-09-16calc canvas: start of direct grid rendering.Michael Meeks2-15/+109
Change-Id: If471fc4ff94b3cb8e2897ac76e712aa3958fc7d2
2020-09-15split panes: Don't expose the freeze panes buttons in the toolbar.Jan Holesovsky1-5/+1
The split panes are not modified that often, no need to have buttons to set that up in the toolbar. Change-Id: I9c7920f6dd57de5f507450e15fcde615ad941f1c
2020-09-15leaflet: added freeze pan buttons to view menuPranam Lashkari2-0/+7
Change-Id: I9ba7a0982b15d097e21d93a6e18289455f0f8139
2020-09-15leaflet: added freeze pan buttons to toolbarPranam Lashkari2-1/+9
Change-Id: Ifb9ae58deef77397a5d5eb7c0bfd85625f1a4e74
2020-09-15notebookbar: added freeze pan buttons in calcPranam Lashkari5-0/+63
added icons too Change-Id: I913f315c2e5bfcfbf6f82677ecffe76eaf86ea2a
2020-09-15split panes: No dragging of the split lines currently.Jan Holesovsky2-1/+7
It is too buggy, let's instead allow only setting of that via the menu, similarly to what the desktop LO does. Change-Id: I219b2535e0cbd5310fe2a3a9ebf2098536d5c175
2020-09-15split panes: No split lines at all when they are at 0 position.Jan Holesovsky1-6/+11
Change-Id: I9fee28f32acdabd4768b095a471f26e5e8e9a378
2020-09-15calc canvas: More reliable check for the desktop / mobile / tablet.Jan Holesovsky2-2/+10
Change-Id: I7b1ea581051608e020fd6e4615be9bc9b919c01f
2020-09-15calc canvas: get the right core px size of the canvas across.Michael Meeks1-7/+9
Change-Id: Ib079097b9d5caf707bd95b286d675791b5df9255
2020-09-15Adjust splitline thickness according to zoom levelSzymon Kłos1-1/+3
Change-Id: I33c398f1545860fb2f77d9d8dcdd8f632c2603ca
2020-09-15Don't block handling of touch eventsSzymon Kłos2-13/+0
This is partial revert of 901ecca313. Handles (Markers) 'down' handler disabled main TouchGesture handler what caused taps to be ignored. Eg. double click didn't enter edit mode for a Calc cell. Change-Id: Id7097e9ad513e56a71423a6d6a8ac5105c373f77
2020-09-15calc tiles: clarify some magic.Michael Meeks1-5/+8
Change-Id: I2d95dd09b5640a5216e72366493ddf77541c8b73
2020-09-15calc canvas: avoid repeated setTransform; build the right offset.Michael Meeks1-12/+6
Change-Id: Iab153b25fa38f27742a052ad0892e3d55c2c04cc
2020-09-15calc canvas: use sub image blitting instead of clipping.Michael Meeks1-9/+20
Avoids thrashing the canvas rendering context / clip state. Change-Id: I547ce22a171874cd7be3a0fac50b4afc56faf084
2020-09-15calc canvas: round view co-ordinates to the real pixels we need.Michael Meeks2-0/+11
Change-Id: I768cd9015da1f1301f3ddad242130d4eddb426d1
2020-09-15calc canvas: avoid lots of canvas context save/restores.Michael Meeks1-10/+3
Change-Id: Ib813686ef7d495e660ad8fa3b545391180b9e019
2020-09-15Split lines only in the corner when set to 0Szymon Kłos1-1/+10
Change-Id: I6192219cede2d0888ecd77236f72ff734d99d778
2020-09-15calc canvas: Preserving of the top left cell should be desktop-only.Jan Holesovsky1-11/+13
On mobile, the center of the zooming has to be according to the center of the pinch-to-zoom, ie. the center has to be taken into account. Change-Id: I3ba2ea90b7bac9bc1ba27f8068ea7ed6bbb4910d
2020-09-15calc canvas: paint invalid tiles until their replacement arrives.Michael Meeks1-3/+7
This avoids display corruption when panning, whereby stale/old canvas content would continue to be rendered in the 'holes' where invalid tiles were not rendered. Change-Id: Ic886c0924c5a930116b1437c8e0cf35726ab76a5
2020-09-15calc tiles: don't send un-necessary zoom / visible area changes.Michael Meeks1-3/+2
Lots of redundant zoom messages seem unhelpful. Change-Id: I944a3202739adfc89aab81902b467a4e34977202
2020-09-15calc canvas: ensure that the fraction width rounds to the pixel width.Michael Meeks1-4/+13
Slave CSS geometry from integral canvas pixels, don't attempt the reverse. Change-Id: I369ed1bea3c4a5a199192aa1e84bb4e03dcb2e94
2020-09-15calc canvas: Fix occasional off-by-one error that results in a blurry canvas.Jan Holesovsky1-6/+12
The core of the fix is in _getNewPixelOrigin() where the round() behaves non-predictably / inconsistently with the rest of the code, causing random off-by-one error that shows (or not) depending on the window size. The biggest problem of this is that this off-by-one is then multiplied somewhere by the zoom factor, causing the canvas being completely blurry; but eventually when the user clicked into the sheet, it 'magically' fixed itself. The rest of the changes (in setZoom()) should actually do the same thing as the previous code, but using existing methods, instead of computing the shifts manually. Change-Id: If0ecb1301b7c1e65cfe8126385ef959c584c5d16
2020-09-15calc tiles: connect debug to global setting.Michael Meeks1-10/+6
Change-Id: I0db008ac40020c9173d37969aa6c23b3a1696f79
2020-09-15calc canvas: Keep the document zoom separate from the browser zoom.Jan Holesovsky1-15/+0
With this, if you increase or decrease the browser zoom, the document zoom still stays the same. Before this, when you had eg. 100% document zoom and 150% browser zoom and try to zoom out, it actually zooms in instead, because the browser's zoom is added to the mix; and it displays the wrong value in the dropdown. Even worse, to get the 100% again, you have to choose 80% so that the correction for the browser zoom is added, resulting in the 100%. We should keep both the document and browser zoom separately. The questions is then whether to combine them later for the actual document rendering; I believe we should not, but even if we should, we cannot do it directly in the setZoom() method, but instead closer to the painting itself. Change-Id: Ib7f3d2ae8b4e6e6086f14e933b215c32326c6be6
2020-09-15specialize twips/core-pixels/css-pixels conversion methodsDennis Francis2-13/+125
Change-Id: Ifb0a67b938fdd34a06bb7e75832498d566247010
2020-09-15detect change in dpi and update zoomDennis Francis2-13/+16
Change-Id: I034727a8fe8495445350648fea2422c56fda1875
2020-09-15use the main canvas dpiScale everywhereDennis Francis7-22/+51
Change-Id: I2bea44a000552ce8f2fee2b0ebb5a4d162d3576f
2020-09-15sheetGeometry: use exact dpiScale when canvas is usedDennis Francis1-58/+70
Also use the term core-pixels instead of 'device pixels' which is more appropriate. Change-Id: I18952393f17e0391167e0219b829be47723c5c47
2020-09-15header canvases should resize with map-resizeDennis Francis1-0/+2
This is now safe as we update their contents on resize. Change-Id: Ie8b33e03e9b67de0f5c4d0e4822154032c171a70
2020-09-15setup the header canvases in the same way as the tile-canvasDennis Francis3-3/+6
All drawings to it needs to in css pixels for now, because the mouse/touch handlers need positions in css pixels and the HeaderInfo datastructure has everything in css pixels. Moving the headers to the main-canvas needs more work but this change will help in doing that. Change-Id: I6a19e62a67b2b42975a51bb695db300ce493ba01
2020-09-15compute nearest zoomlevel with devpixelratio includedDennis Francis2-0/+20
and use this for every setZoom call. Change-Id: I37f0d7503e4087f062576bc03b13bd8155c3c994
2020-09-15calc-canvas: make tile size fixed (256) for every deviceDennis Francis2-2/+13
Change-Id: I4e00b8b43f73f001a8bcfc77931f5fa22982642e
2020-09-15use window.devicePixelRatio without roundingDennis Francis2-6/+11
at least for the canvas tile layer. Change-Id: Ia830cad1fe0aaac6df03288cc1ee9e0371ef6f47
2020-09-15Don't merge - grim hack try to get 1:1 pixels in canvas.Michael Meeks1-27/+17
Change-Id: I8ff3f157112295e0c6ef6743de3c878329b98adb
2020-09-15calc tiles: more debug helpersMichael Meeks1-2/+9
Change-Id: I24370b2a35fdfeca360cbaeb296cd2dd3a11e768
2020-09-15calc tiles: share code for building bounds and panes.Michael Meeks1-39/+32
Avoid duplication between tileReady and paint. Change-Id: Ic3d1c22a1dbeffe1abfffd35ea0d7fbcfd5c1ccc
2020-09-15calc tiles: remove partial re-rendering for now.Michael Meeks1-118/+7
Drops _shiftAndPaint and _paintRects, blits are fast. Change-Id: I64779f1037784f4efbe74cdf564b5f09e13b3316
2020-09-15cypress: php-proxy: select a row to remove text selection.Tamás Zolnai1-7/+23
Instead of selecting a column. Selecting a column means 1048576 cells, which makes things slow. While selecting a row means only 1024 cells, which won't slow down the execution. This issue becomes more visible with php-proxy since it's even slower. Change-Id: I67828dcba250b2d04053cd44c6f8c83e7a466792 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102749 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2020-09-15cypress: php-proxy: fix text wraping test.Tamás Zolnai2-25/+27
It could fail without php-proy too, but php-proxy slows things down and makes this issue more visible. Change-Id: I6bda9bfd195b28c797b0690e05cddf3f0ee98e12 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102750 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2020-09-15leaflet: disable tooltip in mobile and tabletPranam Lashkari7-7/+14
Change-Id: I591b2392d6c7072144bd7229a60933c61a2f3241 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102506 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-09-15leaflet: annotation: use vex dialogs for annotation replyPranam Lashkari4-17/+36
Change-Id: I171c5712fcae54b4c1c6e2a8be7dd12bd6765f0a Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102412 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-09-15scrolling: fixed multitouch horizontal scrollingPranam Lashkari1-1/+4
Change-Id: I2b30be5bd2d96c4757cd4059a28fb08a702bc3ca Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102447 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-09-15cypress: NC: fix writer page orientation test.Tamás Zolnai1-0/+7
Change-Id: I32e946388f06b3412d54c37dd556976dff362aa7 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102734 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2020-09-15cypress: support running tests with php-proxy.Tamás Zolnai3-13/+36
Change-Id: I9fe4a974582e0475026f6798a338bae033e6d7e6 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102733 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2020-09-15Mobile: Set icon for combobox rotationPedro Pinto Silva1-0/+1
Change-Id: Id063188781165d8724cbe4b04ec7f9c5b767e37c Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102730 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Pedro Silva <pedro.silva@collabora.com>
2020-09-15leaflet: removed bogus menu items in Draw menuPranam Lashkari1-9/+9
Change-Id: I055cb3cb08b7f91d35602ee33c6b799048950134 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102740 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>