loleaflet/src/control/Control.ContextMenu.js | 7 ++++++- loleaflet/src/control/Control.LokDialog.js | 9 +++++++++ loleaflet/src/map/handler/Map.TouchGesture.js | 4 ++++ 3 files changed, 19 insertions(+), 1 deletion(-)
New commits: commit b0b11b6e7a036b84e5271fa64c9b7ae8b55a8c93 Author: Henry Castro <hcas...@collabora.com> AuthorDate: Fri Jun 28 13:31:02 2019 -0400 Commit: Henry Castro <hcas...@collabora.com> CommitDate: Tue Aug 20 16:34:56 2019 +0200 loleaflet: mobile: ensure to close any popups in long press event Change-Id: I64d438e3667a92f16d5bc39490ba31fdd83691fb Reviewed-on: https://gerrit.libreoffice.org/77832 Reviewed-by: Henry Castro <hcas...@collabora.com> Tested-by: Henry Castro <hcas...@collabora.com> diff --git a/loleaflet/src/map/handler/Map.TouchGesture.js b/loleaflet/src/map/handler/Map.TouchGesture.js index e418bfc2a..e5d954f5f 100644 --- a/loleaflet/src/map/handler/Map.TouchGesture.js +++ b/loleaflet/src/map/handler/Map.TouchGesture.js @@ -167,6 +167,8 @@ L.Map.TouchGesture = L.Handler.extend({ return; } + this._map.fire('closepopups'); + if (window.ThisIsTheiOSApp) { // console.log('==> ' + e.timeStamp); if (!this._toolbar._map && this._map._docLayer.containsSelection(latlng)) { commit 4f0c62898cb9ac909a125b81f998bf515769bb5a Author: Henry Castro <hcas...@collabora.com> AuthorDate: Mon Jun 17 14:30:08 2019 -0400 Commit: Henry Castro <hcas...@collabora.com> CommitDate: Tue Aug 20 16:34:40 2019 +0200 loeaflet: mobile: close popup dialog on tap event Change-Id: Iad64295db4d9d135b4ce1f68bb62948e7be8e92e Reviewed-on: https://gerrit.libreoffice.org/77831 Reviewed-by: Henry Castro <hcas...@collabora.com> Tested-by: Henry Castro <hcas...@collabora.com> diff --git a/loleaflet/src/control/Control.ContextMenu.js b/loleaflet/src/control/Control.ContextMenu.js index 652971f8f..4d67b67c3 100644 --- a/loleaflet/src/control/Control.ContextMenu.js +++ b/loleaflet/src/control/Control.ContextMenu.js @@ -55,12 +55,17 @@ L.Control.ContextMenu = L.Control.extend({ map.on('locontextmenu', this._onContextMenu, this); map.on('mousedown', this._onMouseDown, this); map.on('keydown', this._onKeyDown, this); + map.on('closepopups', this._onClosePopup, this); + }, + + _onClosePopup: function () { + $.contextMenu('destroy', '.leaflet-layer'); }, _onMouseDown: function(e) { this._prevMousePos = {x: e.originalEvent.pageX, y: e.originalEvent.pageY}; - $.contextMenu('destroy', '.leaflet-layer'); + this._onClosePopup(); }, _onKeyDown: function(e) { diff --git a/loleaflet/src/control/Control.LokDialog.js b/loleaflet/src/control/Control.LokDialog.js index 391f61490..f655a79c3 100644 --- a/loleaflet/src/control/Control.LokDialog.js +++ b/loleaflet/src/control/Control.LokDialog.js @@ -119,6 +119,7 @@ L.Control.LokDialog = L.Control.extend({ map.on('opendialog', this._openDialog, this); map.on('docloaded', this._docLoaded, this); map.on('closepopup', this.onCloseCurrentPopUp, this); + map.on('closepopups', this._onClosePopups, this); map.on('editorgotfocus', this._onEditorGotFocus, this); L.DomEvent.on(document, 'mouseup', this.onCloseCurrentPopUp, this); }, @@ -618,6 +619,14 @@ L.Control.LokDialog = L.Control.extend({ removeZoomTarget(this._toStrId(dialogId)); }, + _onClosePopups: function() { + for (var dialog in this._dialogs) { + if (this._dialogs[dialog].isSidebar != true) { + this._onDialogClose(this._dialogs[dialog].id, true); + } + } + }, + onCloseCurrentPopUp: function() { // for title-less dialog only (context menu, pop-up) if (!this._currentId || !this._isOpen(this._currentId) || this._dialogs[this._currentId].title) diff --git a/loleaflet/src/map/handler/Map.TouchGesture.js b/loleaflet/src/map/handler/Map.TouchGesture.js index 899cd6c2d..e418bfc2a 100644 --- a/loleaflet/src/map/handler/Map.TouchGesture.js +++ b/loleaflet/src/map/handler/Map.TouchGesture.js @@ -201,6 +201,8 @@ L.Map.TouchGesture = L.Handler.extend({ if (window.ThisIsTheiOSApp) this._toolbar.remove(); + + this._map.fire('closepopups'); this._map._contextMenu._onMouseDown({originalEvent: e.srcEvent}); this._map._docLayer._postMouseEvent('buttondown', mousePos.x, mousePos.y, 1, 1, 0); this._map._docLayer._postMouseEvent('buttonup', mousePos.x, mousePos.y, 1, 1, 0); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits