loleaflet/src/control/Control.RowHeader.js | 129 +++++++++++++++++------------ 1 file changed, 76 insertions(+), 53 deletions(-)
New commits: commit e971435be92351cfb5e123971a0e11e8aa02ab58 Author: Pranam Lashkari <lpra...@collabora.com> AuthorDate: Thu Jan 23 22:07:31 2020 +0530 Commit: Jan Holesovsky <ke...@collabora.com> CommitDate: Tue Jan 28 16:08:08 2020 +0100 Mobile wizard: added for row header In mobile view context menu replaced with wizard for calc row header Change-Id: Id85eefacbe598a3a041dd92dbe6b3c85e8997b4a Reviewed-on: https://gerrit.libreoffice.org/c/online/+/87286 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Jan Holesovsky <ke...@collabora.com> diff --git a/loleaflet/src/control/Control.RowHeader.js b/loleaflet/src/control/Control.RowHeader.js index 15c783220..f4330e59a 100644 --- a/loleaflet/src/control/Control.RowHeader.js +++ b/loleaflet/src/control/Control.RowHeader.js @@ -3,7 +3,7 @@ * L.Control.RowHeader */ -/* global $ _UNO */ +/* global $ _UNO Hammer */ L.Control.RowHeader = L.Control.Header.extend({ options: { cursor: 'row-resize' @@ -60,59 +60,47 @@ L.Control.RowHeader = L.Control.Header.extend({ this._startOffset = 0; this._position = 0; - var rowHeaderObj = this; - L.installContextMenu({ - selector: '.spreadsheet-header-rows', - className: 'loleaflet-font', - items: { - 'insertrowabove': { - name: _UNO('.uno:InsertRowsBefore', 'spreadsheet', true), - callback: function() { - var index = rowHeaderObj._lastMouseOverIndex; - if (index) { - rowHeaderObj.insertRow.call(rowHeaderObj, index); - } - } - }, - 'deleteselectedrow': { - name: _UNO('.uno:DeleteRows', 'spreadsheet', true), - callback: function() { - var index = rowHeaderObj._lastMouseOverIndex; - if (index) { - rowHeaderObj.deleteRow.call(rowHeaderObj, index); - } - } - }, - 'optimalheight': { - name: _UNO('.uno:SetOptimalRowHeight', 'spreadsheet', true), - callback: function() { - var index = rowHeaderObj._lastMouseOverIndex; - if (index) { - rowHeaderObj.optimalHeight.call(rowHeaderObj, index); - } - } - }, - 'hideRow': { - name: _UNO('.uno:HideRow', 'spreadsheet', true), - callback: function() { - var index = rowHeaderObj._lastMouseOverIndex; - if (index) { - rowHeaderObj.hideRow.call(rowHeaderObj, index); - } - } - }, - 'showRow': { - name: _UNO('.uno:ShowRow', 'spreadsheet', true), - callback: function() { - var index = rowHeaderObj._lastMouseOverIndex; - if (index) { - rowHeaderObj.showRow.call(rowHeaderObj, index); - } - } - } + this._menuItem = { + 'insertrowabove': { + name: _UNO('.uno:InsertRowsBefore', 'spreadsheet', true), + callback: (this._insertRowAbove).bind(this) + }, + 'deleteselectedrow': { + name: _UNO('.uno:DeleteRows', 'spreadsheet', true), + callback: (this._deleteSelectedRow).bind(this) + }, + 'optimalheight': { + name: _UNO('.uno:SetOptimalRowHeight', 'spreadsheet', true), + callback: (this._optimalHeight).bind(this) + }, + 'hideRow': { + name: _UNO('.uno:HideRow', 'spreadsheet', true), + callback: (this._hideRow).bind(this) }, - zIndex: 10 - }); + 'showRow': { + name: _UNO('.uno:ShowRow', 'spreadsheet', true), + callback: (this._showRow).bind(this) + } + }; + + if (!window.mode.isMobile()) { + L.installContextMenu({ + selector: '.spreadsheet-header-rows', + className: 'loleaflet-font', + items: this._menuItem, + zIndex: 10 + }); + } else { + var menuData = L.Control.JSDialogBuilder.getMenuStructureForMobileWizard(this._menuItem, true, ''); + (new Hammer(this._canvas, {recognizers: [[Hammer.Press]]})) + .on('press', L.bind(function () { + if (this._map._permission === 'edit') { + window.contextMenuWizard = true; + this._map.fire('mobilewizard', menuData); + } + }, this)); + } + }, optimalHeight: function(index) { @@ -618,6 +606,41 @@ L.Control.RowHeader = L.Control.Header.extend({ this._setCanvasWidth(width); this._map.fire('updatecornerheader'); + }, + + _insertRowAbove: function() { + var index = this._lastMouseOverIndex; + if (index) { + this.insertRow.call(this, index); + } + }, + + _deleteSelectedRow: function() { + var index = this._lastMouseOverIndex; + if (index) { + this.deleteRow.call(this, index); + } + }, + + _optimalHeight: function() { + var index = this._lastMouseOverIndex; + if (index) { + this.optimalHeight.call(this, index); + } + }, + + _hideRow: function() { + var index = this._lastMouseOverIndex; + if (index) { + this.hideRow.call(this, index); + } + }, + + _showRow: function() { + var index = this._lastMouseOverIndex; + if (index) { + this.showRow.call(this, index); + } } }); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits