[Libreoffice-commits] online.git: Branch 'distro/collabora/collabora-online-2-1' - loleaflet/src
Marco Cecchetti
marco.cecchetti at collabora.com
Tue May 16 12:46:10 UTC 2017
loleaflet/src/layer/tile/CalcTileLayer.js | 36 ++++++++++++++++++++++--------
1 file changed, 27 insertions(+), 9 deletions(-)
New commits:
commit 566a332d5cc5c7e12269047cddd4353c7e6cfc96
Author: Marco Cecchetti <marco.cecchetti at collabora.com>
Date: Tue Apr 25 18:57:30 2017 +0200
loleaflet: misplaced comment mark on inserting/deleting/resizing row/col
Change-Id: Ib95870905d1bfc613ba454c7126501b3533e4ba5
Reviewed-on: https://gerrit.libreoffice.org/37083
Reviewed-by: Jan Holesovsky <kendy at collabora.com>
Tested-by: Jan Holesovsky <kendy at collabora.com>
diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js
index c154d7a4..cb82396d 100644
--- a/loleaflet/src/layer/tile/CalcTileLayer.js
+++ b/loleaflet/src/layer/tile/CalcTileLayer.js
@@ -13,7 +13,7 @@ L.CalcTileLayer = L.TileLayer.extend({
},
newAnnotation: function (comment) {
- var annotations = this._annotations[this._partNames[this._selectedPart]];
+ var annotations = this._annotations[this._selectedPart];
var annotation;
for (var key in annotations) {
if (this._cellCursor.contains(annotations[key]._annotation._data.cellPos)) {
@@ -72,7 +72,7 @@ L.CalcTileLayer = L.TileLayer.extend({
value: id
}
};
- var tab = id.substring(0, id.indexOf('.'));
+ var tab = this._selectedPart;
this._map.sendUnoCommand('.uno:DeleteNote', comment);
this._annotations[tab][id].closePopup();
this._map.focus();
@@ -92,14 +92,15 @@ L.CalcTileLayer = L.TileLayer.extend({
},
showAnnotations: function () {
- var annotations = this._annotations[this._partNames[this._selectedPart]];
+ var annotations = this._annotations[this._selectedPart];
for (var key in annotations) {
this.showAnnotation(annotations[key]);
}
},
hideAnnotations: function (part) {
- var annotations = this._annotations[this._partNames[part]];
+
+ var annotations = this._annotations[part];
for (var key in annotations) {
this.hideAnnotation(annotations[key]);
}
@@ -175,7 +176,7 @@ L.CalcTileLayer = L.TileLayer.extend({
_onMessage: function (textMsg, img) {
if (textMsg.startsWith('comment:')) {
var obj = JSON.parse(textMsg.substring('comment:'.length + 1));
- obj.comment.tab = obj.comment.id.substring(0, obj.comment.id.indexOf('.'));
+ obj.comment.tab = parseInt(obj.comment.tab);
if (obj.comment.action === 'Add') {
obj.comment.cellPos = L.LOUtil.stringToBounds(obj.comment.cellPos);
obj.comment.cellPos = L.latLngBounds(this._twipsToLatLng(obj.comment.cellPos.getBottomLeft()),
@@ -184,7 +185,7 @@ L.CalcTileLayer = L.TileLayer.extend({
this._annotations[obj.comment.tab] = {};
}
this._annotations[obj.comment.tab][obj.comment.id] = this.createAnnotation(obj.comment);
- if (obj.comment.tab === this._partNames[this._selectedPart]) {
+ if (obj.comment.tab === this._selectedPart) {
this.showAnnotation(this._annotations[obj.comment.tab][obj.comment.id]);
}
} else if (obj.comment.action === 'Remove') {
@@ -205,8 +206,10 @@ L.CalcTileLayer = L.TileLayer.extend({
}
} else if (textMsg.startsWith('invalidateheader: column')) {
this._map.fire('updaterowcolumnheaders', {x: this._map._getTopLeftPoint().x, y: 0, offset: {x: undefined, y: 0}});
+ this._map._socket.sendMessage('commandvalues command=.uno:ViewAnnotationsPosition');
} else if (textMsg.startsWith('invalidateheader: row')) {
this._map.fire('updaterowcolumnheaders', {x: 0, y: this._map._getTopLeftPoint().y, offset: {x: 0, y: undefined}});
+ this._map._socket.sendMessage('commandvalues command=.uno:ViewAnnotationsPosition');
} else {
L.TileLayer.prototype._onMessage.call(this, textMsg, img);
}
@@ -436,7 +439,7 @@ L.CalcTileLayer = L.TileLayer.extend({
this.clearAnnotations();
for (var index in values.comments) {
comment = values.comments[index];
- comment.tab = comment.id.substring(0, comment.id.indexOf('.'));
+ comment.tab = parseInt(comment.tab);
comment.cellPos = L.LOUtil.stringToBounds(comment.cellPos);
comment.cellPos = L.latLngBounds(this._twipsToLatLng(comment.cellPos.getBottomLeft()),
this._twipsToLatLng(comment.cellPos.getTopRight()));
@@ -446,8 +449,23 @@ L.CalcTileLayer = L.TileLayer.extend({
this._annotations[comment.tab][comment.id] = this.createAnnotation(comment);
}
this.showAnnotations();
- }
- else {
+ } else if (values.commentsPos) {
+ var comment;
+ this.hideAnnotations();
+ for (var index in values.commentsPos) {
+ comment = values.commentsPos[index];
+ comment.tab = parseInt(comment.tab);
+ comment.cellPos = L.LOUtil.stringToBounds(comment.cellPos);
+ comment.cellPos = L.latLngBounds(this._twipsToLatLng(comment.cellPos.getBottomLeft()),
+ this._twipsToLatLng(comment.cellPos.getTopRight()));
+ var annotation = this._annotations[comment.tab][comment.id];
+ if (annotation) {
+ annotation.setLatLngBounds(comment.cellPos);
+ annotation.mark.setLatLng(comment.cellPos.getNorthEast());
+ }
+ }
+ this.showAnnotations();
+ } else {
L.TileLayer.prototype._onCommandValuesMsg.call(this, textMsg);
}
},
More information about the Libreoffice-commits
mailing list