loleaflet/src/layer/tile/TileLayer.TableOverlay.js |    1 +
 loleaflet/src/layer/tile/TileLayer.js              |    5 +++--
 loleaflet/src/layer/vector/Path.Transform.js       |   19 +++++++++++++------
 3 files changed, 17 insertions(+), 8 deletions(-)

New commits:
commit 6413d9ffe92ddfb5803f48115a65d973a076ca00
Author:     Tomaž Vajngerl <[email protected]>
AuthorDate: Mon Sep 23 23:13:22 2019 +0200
Commit:     Tomaž Vajngerl <[email protected]>
CommitDate: Tue Sep 24 10:32:23 2019 +0200

    allow only south east graphic markers for table selection
    
    Change-Id: I581a6a6319c4f3008fb8f5ed14cc57b3df991f42
    Reviewed-on: https://gerrit.libreoffice.org/79427
    Reviewed-by: Tomaž Vajngerl <[email protected]>
    Tested-by: Tomaž Vajngerl <[email protected]>

diff --git a/loleaflet/src/layer/tile/TileLayer.TableOverlay.js 
b/loleaflet/src/layer/tile/TileLayer.TableOverlay.js
index d02c89b59..7af0d971b 100644
--- a/loleaflet/src/layer/tile/TileLayer.TableOverlay.js
+++ b/loleaflet/src/layer/tile/TileLayer.TableOverlay.js
@@ -175,6 +175,7 @@ L.TileLayer.include({
                textMsg = textMsg.substring('tableselected:'.length + 1);
                var message = JSON.parse(textMsg);
                this._currentTableData = message;
+               this._hasTableSelection = this._currentTableData.rows != null 
|| this._currentTableData.columns != null;
                this._updateTableMarkers();
                this._map.on('zoomend', L.bind(this._onZoom, this));
        },
diff --git a/loleaflet/src/layer/tile/TileLayer.js 
b/loleaflet/src/layer/tile/TileLayer.js
index 6851333c5..f608dc11d 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -2392,8 +2392,9 @@ L.TileLayer = L.GridLayer.extend({
                                this._graphicMarker.dragging.enable();
                        this._graphicMarker.transform.enable({
                                scaling: extraInfo.isResizable,
-                               rotation: extraInfo.isRotatable,
-                               uniformScaling: 
!this._isGraphicAngleDivisibleBy90()});
+                               rotation: extraInfo.isRotatable && 
!this._hasTableSelection,
+                               uniformScaling: 
!this._isGraphicAngleDivisibleBy90(),
+                               scaleSouthAndEastOnly: 
this._hasTableSelection});
                        if (extraInfo.dragInfo && extraInfo.dragInfo.svg) {
                                this._graphicMarker.removeEmbeddedSVG();
                                
this._graphicMarker.addEmbeddedSVG(extraInfo.dragInfo.svg);
diff --git a/loleaflet/src/layer/vector/Path.Transform.js 
b/loleaflet/src/layer/vector/Path.Transform.js
index 47a32698e..2beb7a3dd 100644
--- a/loleaflet/src/layer/vector/Path.Transform.js
+++ b/loleaflet/src/layer/vector/Path.Transform.js
@@ -51,6 +51,7 @@ L.Handler.PathTransform = L.Handler.extend({
        options: {
                rotation: true,
                scaling:  true,
+               scaleSouthAndEastOnly:  false,
                uniformScaling: true,
                maxZoom:  22,
 
@@ -831,13 +832,19 @@ L.Handler.PathTransform = L.Handler.extend({
        */
        _createHandler: function(latlng, type, index) {
                var HandleClass = this.options.handleClass;
+               var options = {
+                       className: 'leaflet-drag-transform-marker 
drag-marker--' +
+                       index + ' drag-marker--' + type,
+                       index:     index,
+                       type:      type,
+               };
+               if (this.options.scaleSouthAndEastOnly && index < 5) {
+                       options.opacity = 0;
+                       options.fill = false;
+                       options.interactive = false;
+               }
                var marker = new HandleClass(latlng,
-                       L.Util.extend({}, this.options.handlerOptions, {
-                               className: 'leaflet-drag-transform-marker 
drag-marker--' +
-                               index + ' drag-marker--' + type,
-                               index:     index,
-                               type:      type
-                       })
+                       L.Util.extend({}, this.options.handlerOptions, options)
                );
 
                marker.on('mousedown', this._onScaleStart, this);
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to