[Libreoffice-commits] online.git: loleaflet/src
Henry Castro
hcastro at collabora.com
Wed Aug 10 21:06:13 UTC 2016
loleaflet/src/control/Control.ColumnHeader.js | 19 ++++++++++---------
loleaflet/src/control/Control.RowHeader.js | 19 ++++++++++---------
2 files changed, 20 insertions(+), 18 deletions(-)
New commits:
commit 216ff61bafd420b058912c02d1e1e19f7111cd1e
Author: Henry Castro <hcastro at collabora.com>
Date: Wed Aug 10 17:05:45 2016 -0400
loleaflet: limit vertical/horizontal line movement
diff --git a/loleaflet/src/control/Control.ColumnHeader.js b/loleaflet/src/control/Control.ColumnHeader.js
index f248439..a4cb870 100644
--- a/loleaflet/src/control/Control.ColumnHeader.js
+++ b/loleaflet/src/control/Control.ColumnHeader.js
@@ -112,7 +112,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({
text.innerHTML = content;
width = Math.round(converter.call(context, twip).x) - 1;
if (width === -1) {
- L.DomUtil.setStyle(text, 'display', 'none');
+ L.DomUtil.setStyle(column, 'display', 'none');
}
else {
L.DomUtil.setStyle(column, 'width', width + 'px');
@@ -170,20 +170,21 @@ L.Control.ColumnHeader = L.Control.Header.extend({
this._map.sendUnoCommand('.uno:SelectAll');
},
- _getVertLatLng: function (offset, e) {
+ _getVertLatLng: function (start, offset, e) {
+ var limit = this._map.mouseEventToContainerPoint({clientX: start.x, clientY: start.y});
var drag = this._map.mouseEventToContainerPoint(e);
return [
- this._map.containerPointToLatLng(new L.Point(drag.x + offset.x, 0)),
- this._map.containerPointToLatLng(new L.Point(drag.x + offset.x, this._map.getSize().y))
+ this._map.containerPointToLatLng(new L.Point(Math.max(limit.x, drag.x + offset.x), 0)),
+ this._map.containerPointToLatLng(new L.Point(Math.max(limit.x, drag.x + offset.x), this._map.getSize().y))
];
},
onDragStart: function (item, start, offset, e) {
if (!this._vertLine) {
- this._vertLine = L.polyline(this._getVertLatLng(offset, e), {color: 'darkblue', weight: 1});
+ this._vertLine = L.polyline(this._getVertLatLng(start, offset, e), {color: 'darkblue', weight: 1});
}
else {
- this._vertLine.setLatLngs(this._getVertLatLng(offset, e));
+ this._vertLine.setLatLngs(this._getVertLatLng(start, offset, e));
}
this._map.addLayer(this._vertLine);
@@ -191,7 +192,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({
onDragMove: function (item, start, offset, e) {
if (this._vertLine) {
- this._vertLine.setLatLngs(this._getVertLatLng(offset, e));
+ this._vertLine.setLatLngs(this._getVertLatLng(start, offset, e));
}
},
@@ -199,7 +200,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({
var end = new L.Point(e.clientX + offset.x, e.clientY);
var distance = this._map._docLayer._pixelsToTwips(end.subtract(start));
- if (distance.x > 0 && item.width != distance.x) {
+ if (item.width != distance.x) {
var command = {
Column: {
type: 'unsigned short',
@@ -207,7 +208,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({
},
Width: {
type: 'unsigned short',
- value: distance.x
+ value: Math.max(distance.x, 0)
}
};
diff --git a/loleaflet/src/control/Control.RowHeader.js b/loleaflet/src/control/Control.RowHeader.js
index 24dc811..658f156 100644
--- a/loleaflet/src/control/Control.RowHeader.js
+++ b/loleaflet/src/control/Control.RowHeader.js
@@ -110,7 +110,7 @@ L.Control.RowHeader = L.Control.Header.extend({
text.innerHTML = content;
height = Math.round(converter.call(context, twip).y) - 1;
if (height === -1) {
- L.DomUtil.setStyle(text, 'display', 'none');
+ L.DomUtil.setStyle(row, 'display', 'none');
} else {
L.DomUtil.setStyle(row, 'height', height + 'px');
L.DomUtil.setStyle(text, 'line-height', height + 'px');
@@ -151,20 +151,21 @@ L.Control.RowHeader = L.Control.Header.extend({
this._selectRow(row, modifier);
},
- _getHorzLatLng: function (offset, e) {
+ _getHorzLatLng: function (start, offset, e) {
+ var limit = this._map.mouseEventToContainerPoint({clientX: start.x, clientY: start.y});
var drag = this._map.mouseEventToContainerPoint(e);
return [
- this._map.containerPointToLatLng(new L.Point(0, drag.y + offset.y)),
- this._map.containerPointToLatLng(new L.Point(this._map.getSize().x, drag.y + offset.y))
+ this._map.containerPointToLatLng(new L.Point(0, Math.max(limit.y, drag.y + offset.y))),
+ this._map.containerPointToLatLng(new L.Point(this._map.getSize().x, Math.max(limit.y, drag.y + offset.y)))
];
},
onDragStart: function (item, start, offset, e) {
if (!this._horzLine) {
- this._horzLine = L.polyline(this._getHorzLatLng(offset, e), {color: 'darkblue', weight: 1});
+ this._horzLine = L.polyline(this._getHorzLatLng(start, offset, e), {color: 'darkblue', weight: 1});
}
else {
- this._horzLine.setLatLngs(this._getHorzLatLng(offset, e));
+ this._horzLine.setLatLngs(this._getHorzLatLng(start, offset, e));
}
this._map.addLayer(this._horzLine);
@@ -172,7 +173,7 @@ L.Control.RowHeader = L.Control.Header.extend({
onDragMove: function (item, start, offset, e) {
if (this._horzLine) {
- this._horzLine.setLatLngs(this._getHorzLatLng(offset, e));
+ this._horzLine.setLatLngs(this._getHorzLatLng(start, offset, e));
}
},
@@ -180,7 +181,7 @@ L.Control.RowHeader = L.Control.Header.extend({
var end = new L.Point(e.clientX, e.clientY + offset.y);
var distance = this._map._docLayer._pixelsToTwips(end.subtract(start));
- if (distance.y > 0 && item.height != distance.y) {
+ if (item.height != distance.y) {
var command = {
Row: {
type: 'unsigned short',
@@ -188,7 +189,7 @@ L.Control.RowHeader = L.Control.Header.extend({
},
Height: {
type: 'unsigned short',
- value: distance.y
+ value: Math.max(distance.y, 0)
}
};
More information about the Libreoffice-commits
mailing list