[Libreoffice-commits] online.git: loleaflet/src
Pranam Lashkari (via logerrit)
logerrit at kemper.freedesktop.org
Tue Sep 15 13:49:05 UTC 2020
loleaflet/src/layer/AnnotationManager.js | 11 +++++++---
loleaflet/src/layer/AnnotationManagerImpress.js | 10 ++++++---
loleaflet/src/layer/marker/Annotation.js | 25 +++++++++++++++---------
loleaflet/src/layer/tile/TileLayer.js | 7 ++++--
4 files changed, 36 insertions(+), 17 deletions(-)
New commits:
commit 245f797ac984c01cda85c508c44844586e9d694d
Author: Pranam Lashkari <lpranam at collabora.com>
AuthorDate: Fri Sep 11 08:20:29 2020 +0530
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Tue Sep 15 15:48:44 2020 +0200
leaflet: annotation: use vex dialogs for annotation reply
Change-Id: I171c5712fcae54b4c1c6e2a8be7dd12bd6765f0a
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/102412
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
diff --git a/loleaflet/src/layer/AnnotationManager.js b/loleaflet/src/layer/AnnotationManager.js
index 11224fd2a..e5ad6b498 100644
--- a/loleaflet/src/layer/AnnotationManager.js
+++ b/loleaflet/src/layer/AnnotationManager.js
@@ -626,9 +626,14 @@ L.AnnotationManager = L.AnnotationManagerBase.extend({
},
reply: function (annotation) {
- annotation.reply();
- this.select(annotation);
- annotation.focus();
+ if (window.mode.isMobile() || window.mode.isTablet()) {
+ this._doclayer.newAnnotationVex(annotation, annotation._onReplyClick,/* isMod */ true, '');
+ }
+ else {
+ annotation.reply();
+ this.select(annotation);
+ annotation.focus();
+ }
},
resolve: function (annotation) {
diff --git a/loleaflet/src/layer/AnnotationManagerImpress.js b/loleaflet/src/layer/AnnotationManagerImpress.js
index 542f0572b..815021e9f 100644
--- a/loleaflet/src/layer/AnnotationManagerImpress.js
+++ b/loleaflet/src/layer/AnnotationManagerImpress.js
@@ -129,9 +129,13 @@ L.AnnotationManagerImpress = L.AnnotationManagerBase.extend({
onAnnotationReply: function (annotation) {
this.onAnnotationCancel();
this._selectedAnnotation = annotation._data.id;
- annotation.reply();
- this.scrollUntilAnnotationIsVisible(annotation);
- annotation.focus();
+ if (window.mode.isMobile() || window.mode.isTablet()) {
+ this._doclayer.newAnnotationVex(annotation, annotation._onReplyClick,/* isMod */ true, '');
+ } else {
+ annotation.reply();
+ this.scrollUntilAnnotationIsVisible(annotation);
+ annotation.focus();
+ }
},
onAnnotationRemove: function (id) {
this.onAnnotationCancel();
diff --git a/loleaflet/src/layer/marker/Annotation.js b/loleaflet/src/layer/marker/Annotation.js
index bf1ca54d3..dc4f94633 100644
--- a/loleaflet/src/layer/marker/Annotation.js
+++ b/loleaflet/src/layer/marker/Annotation.js
@@ -361,14 +361,21 @@ L.Annotation = L.Layer.extend({
_onReplyClick: function (e) {
L.DomEvent.stopPropagation(e);
- this._data.reply = this._nodeReplyText.value;
- // Assigning an empty string to .innerHTML property in some browsers will convert it to 'null'
- // While in browsers like Chrome and Firefox, a null value is automatically converted to ''
- // Better to assign '' here instead of null to keep the behavior same for all
- this._nodeReplyText.value = '';
- this.show();
- this._checkBounds();
- this._map.fire('AnnotationReply', {annotation: this});
+ if (window.mode.isMobile() || window.mode.isTablet()) {
+ e.annotation._data.reply = e.annotation.text;
+ e.annotation.show();
+ e.annotation._checkBounds();
+ this._map.fire('AnnotationReply', {annotation: e.annotation});
+ } else {
+ this._data.reply = this._nodeReplyText.value;
+ // Assigning an empty string to .innerHTML property in some browsers will convert it to 'null'
+ // While in browsers like Chrome and Firefox, a null value is automatically converted to ''
+ // Better to assign '' here instead of null to keep the behavior same for all
+ this._nodeReplyText.value = '';
+ this.show();
+ this._checkBounds();
+ this._map.fire('AnnotationReply', {annotation: this});
+ }
},
_onResolveClick: function (e) {
@@ -466,7 +473,7 @@ L.Annotation = L.Layer.extend({
_updateAnnotationMarker: function () {
// Make sure to place the markers only for presentations and draw documents
- if (this._map._docLayer._docType !== 'presentation')
+ if (this._map._docLayer._docType !== 'presentation')
return;
if (this._data == null)
return;
diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js
index f2c0f5f15..bdd3f3486 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -381,7 +381,7 @@ L.TileLayer = L.GridLayer.extend({
return newEvent;
},
- newAnnotationVex: function(comment, addCommentFn, isMod) {
+ newAnnotationVex: function(comment, addCommentFn, isMod, displayContent) {
var that = this;
var commentData = null;
@@ -392,7 +392,10 @@ L.TileLayer = L.GridLayer.extend({
} else {
// Modification
commentData = comment._data;
- content = commentData.text;
+ if (displayContent === undefined)
+ content = commentData.text;
+ else
+ content = displayContent;
}
var dialog = vex.dialog.open({
More information about the Libreoffice-commits
mailing list