loleaflet/src/map/Map.js |   24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

New commits:
commit 80ed51d01f9e58e830acd17d7223384dcf376bdd
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Thu Sep 3 23:19:13 2020 +0200
Commit:     Jan Holesovsky <ke...@collabora.com>
CommitDate: Thu Sep 3 23:19:13 2020 +0200

    calc canvas: Preserving of the top left cell should be desktop-only.
    
    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

diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js
index 4221d8a4d..e7c3b281d 100644
--- a/loleaflet/src/map/Map.js
+++ b/loleaflet/src/map/Map.js
@@ -480,20 +480,22 @@ L.Map = L.Evented.extend({
                        // for spreadsheets, when the document is smaller than 
the viewing area
                        // we want it to be glued to the row/column headers 
instead of being centered
                        this._docLayer._checkSpreadSheetBounds(zoom);
-                       var calcLayer = this._docLayer;
-                       if (calcLayer.options.sheetGeometryDataEnabled && 
calcLayer.sheetGeometry) {
-                               var sheetGeom = calcLayer.sheetGeometry;
-                               var cellRange = sheetGeom.getViewCellRange();
-                               var col = cellRange.columnrange.start, row = 
cellRange.rowrange.start;
-                               var zoomScaleAbs = this.zoomToFactor(zoom);
+                       if (window.mode.isDesktop()) {
+                               var calcLayer = this._docLayer;
+                               if (calcLayer.options.sheetGeometryDataEnabled 
&& calcLayer.sheetGeometry) {
+                                       var sheetGeom = calcLayer.sheetGeometry;
+                                       var cellRange = 
sheetGeom.getViewCellRange();
+                                       var col = cellRange.columnrange.start, 
row = cellRange.rowrange.start;
+                                       var zoomScaleAbs = 
this.zoomToFactor(zoom);
 
-                               var newTopLeftPx = sheetGeom.getCellRect(col, 
row, zoomScaleAbs).getTopLeft();
-                               var moveByPoint = 
this._getTopLeftPoint(curCenter, zoom).subtract(newTopLeftPx);
+                                       var newTopLeftPx = 
sheetGeom.getCellRect(col, row, zoomScaleAbs).getTopLeft();
+                                       var moveByPoint = 
this._getTopLeftPoint(curCenter, zoom).subtract(newTopLeftPx);
 
-                               // move the center (which is in LatLng) by the 
computed amount of pixels
-                               var newCenterLatLng = 
this.unproject(this.project(curCenter, zoom).subtract(moveByPoint), zoom);
+                                       // move the center (which is in LatLng) 
by the computed amount of pixels
+                                       var newCenterLatLng = 
this.unproject(this.project(curCenter, zoom).subtract(moveByPoint), zoom);
 
-                               return this.setView(newCenterLatLng, zoom, 
{zoom: options});
+                                       return this.setView(newCenterLatLng, 
zoom, {zoom: options});
+                               }
                        }
                }
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to