loleaflet/src/control/Control.ColumnHeader.js       |    4 ++--
 loleaflet/src/control/Control.ContextMenu.js        |    2 +-
 loleaflet/src/control/Control.Header.js             |    2 +-
 loleaflet/src/control/Control.LokDialog.js          |    2 +-
 loleaflet/src/control/Control.Menubar.js            |   14 +++++++-------
 loleaflet/src/control/Control.MobileTopBar.js       |    2 +-
 loleaflet/src/control/Control.MobileWizard.js       |    2 +-
 loleaflet/src/control/Control.NotebookbarBuilder.js |    2 +-
 loleaflet/src/control/Control.PresentationBar.js    |    2 +-
 loleaflet/src/control/Control.RowHeader.js          |    4 ++--
 loleaflet/src/control/Control.SearchBar.js          |    4 ++--
 loleaflet/src/control/Control.Tabs.js               |    2 +-
 loleaflet/src/control/Control.Toolbar.js            |   12 ++++++------
 loleaflet/src/control/Parts.js                      |    2 +-
 loleaflet/src/control/Permission.js                 |   14 +++++++++++---
 loleaflet/src/control/Ruler.js                      |    4 ++--
 loleaflet/src/control/Toolbar.js                    |   12 ++++++------
 loleaflet/src/layer/marker/Annotation.js            |    2 +-
 loleaflet/src/layer/marker/TextInput.js             |    2 +-
 loleaflet/src/layer/tile/GridLayer.js               |    2 +-
 loleaflet/src/layer/tile/TileLayer.TableOverlay.js  |    2 +-
 loleaflet/src/layer/tile/TileLayer.js               |   18 +++++++++---------
 loleaflet/src/map/Map.js                            |    4 ++--
 loleaflet/src/map/handler/Map.Keyboard.js           |    4 ++--
 loleaflet/src/map/handler/Map.Mouse.js              |    2 +-
 loleaflet/src/map/handler/Map.TouchGesture.js       |    4 ++--
 loleaflet/src/map/handler/Map.WOPI.js               |    4 ++--
 27 files changed, 69 insertions(+), 61 deletions(-)

New commits:
commit 2f9b1bdc54a3e47bc1944cc50d89e4865287c8ec
Author:     Tomaž Vajngerl <[email protected]>
AuthorDate: Sun Jul 12 12:44:09 2020 +0200
Commit:     Pranam Lashkari <[email protected]>
CommitDate: Thu Aug 6 08:15:35 2020 +0200

    Add functions for getting edit or readonly permission, refactor
    
    Instead of always checking the map._permission value, use the
    isPermissionReadOnly and isPermissionEdit functions. Refactor
    the code to use those.
    
    Change-Id: I77ccd278b98a9318344c9b80c17be7cda09f00f8
    Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98592
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-by: Tomaž Vajngerl <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/online/+/100193
    Reviewed-by: Pranam Lashkari <[email protected]>

diff --git a/loleaflet/src/control/Control.ColumnHeader.js 
b/loleaflet/src/control/Control.ColumnHeader.js
index 8c049fd93..a18b707bd 100644
--- a/loleaflet/src/control/Control.ColumnHeader.js
+++ b/loleaflet/src/control/Control.ColumnHeader.js
@@ -101,7 +101,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({
                        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') {
+                               if (this._map.isPermissionEdit()) {
                                        window.contextMenuWizard = true;
                                        this._map.fire('mobilewizard', 
menuData);
                                }
@@ -440,7 +440,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({
                this.mouseInit(canvas);
 
                if ($('.spreadsheet-header-columns').length > 0) {
-                       
$('.spreadsheet-header-columns').contextMenu(this._map._permission === 'edit');
+                       
$('.spreadsheet-header-columns').contextMenu(this._map.isPermissionEdit());
                }
        },
 
diff --git a/loleaflet/src/control/Control.ContextMenu.js 
b/loleaflet/src/control/Control.ContextMenu.js
index 82bd501c5..c4449340e 100644
--- a/loleaflet/src/control/Control.ContextMenu.js
+++ b/loleaflet/src/control/Control.ContextMenu.js
@@ -113,7 +113,7 @@ L.Control.ContextMenu = L.Control.extend({
 
        _onContextMenu: function(obj) {
                var map = this._map;
-               if (map._permission !== 'edit') {
+               if (!map.isPermissionEdit()) {
                        return;
                }
 
diff --git a/loleaflet/src/control/Control.Header.js 
b/loleaflet/src/control/Control.Header.js
index 5aeac06da..0980c1f2b 100644
--- a/loleaflet/src/control/Control.Header.js
+++ b/loleaflet/src/control/Control.Header.js
@@ -266,7 +266,7 @@ L.Control.Header = L.Control.extend({
        },
 
        _onPan: function (event) {
-               if (event.pointerType !== 'touch' || this._map._permission !== 
'edit')
+               if (event.pointerType !== 'touch' || 
!this._map.isPermissionEdit())
                        return;
 
                if (event.type == 'panstart')
diff --git a/loleaflet/src/control/Control.LokDialog.js 
b/loleaflet/src/control/Control.LokDialog.js
index b2a0aa5b6..7fec217d4 100644
--- a/loleaflet/src/control/Control.LokDialog.js
+++ b/loleaflet/src/control/Control.LokDialog.js
@@ -993,7 +993,7 @@ L.Control.LokDialog = L.Control.extend({
        _launchSidebar: function(id, width, height) {
                console.log('_launchSidebar: start: id: ' + id + ', width: ' + 
width + ', height: ' + height);
                if ((window.mode.isMobile() || window.mode.isTablet())
-                   && this._map._permission != 'edit')
+                       && !this._map.isPermissionEdit())
                        return;
 
                $('#sidebar-dock-wrapper').css('display', 'block');
diff --git a/loleaflet/src/control/Control.Menubar.js 
b/loleaflet/src/control/Control.Menubar.js
index e1b76779a..d888a0740 100644
--- a/loleaflet/src/control/Control.Menubar.js
+++ b/loleaflet/src/control/Control.Menubar.js
@@ -754,7 +754,7 @@ L.Control.Menubar = L.Control.extend({
 
                var liItem = L.DomUtil.create('li', '');
                liItem.id = 'menu-' + e.id;
-               if (this._map._permission === 'readonly') {
+               if (this._map.isPermissionReadOnly()) {
                        L.DomUtil.addClass(liItem, 'readonly');
                }
                var aItem = L.DomUtil.create('a', '', liItem);
@@ -850,7 +850,7 @@ L.Control.Menubar = L.Control.extend({
 
                // The _createFileIcon function shows the Collabora logo in the 
iOS app case, no
                // need to delay that until the document has been made editable.
-               if (window.ThisIsTheiOSApp || this._map._permission !== 
'readonly') {
+               if (window.ThisIsTheiOSApp || 
!this._map.isPermissionReadOnly()) {
                        this._createFileIcon();
                }
        },
@@ -992,7 +992,7 @@ L.Control.Menubar = L.Control.extend({
                        var type = $(aItem).data('type');
                        var id = $(aItem).data('id');
                        var constChecked = 'lo-menu-item-checked';
-                       if (self._map._permission === 'edit') {
+                       if (self._map.isPermissionEdit()) {
                                if (type === 'unocommand') { // enable all 
depending on stored commandStates
                                        var data, lang, languageAndCode;
                                        var constUno = 'uno';
@@ -1135,7 +1135,7 @@ L.Control.Menubar = L.Control.extend({
 
                if (id === 'save') {
                        // Save only when not read-only.
-                       if (this._map._permission !== 'readonly') {
+                       if (!this._map.isPermissionReadOnly()) {
                                this._map.fire('postMessage', {msgId: 
'UI_Save'});
                                if 
(!this._map._disableDefaultAction['UI_Save']) {
                                        this._map.save(false, false);
@@ -1338,7 +1338,7 @@ L.Control.Menubar = L.Control.extend({
                if (menuItem.id === 'signdocument' && 
(L.DomUtil.get('document-signing-bar') === null)) {
                        return false;
                }
-               if (this._map._permission === 'readonly' && menuItem.type === 
'menu') {
+               if (this._map.isPermissionReadOnly() && menuItem.type === 
'menu') {
                        var found = false;
                        for (var j in this.options.allowedReadonlyMenus) {
                                if (this.options.allowedReadonlyMenus[j] === 
menuItem.id) {
@@ -1349,7 +1349,7 @@ L.Control.Menubar = L.Control.extend({
                        if (!found)
                                return false;
                }
-               if (this._map._permission === 'readonly') {
+               if (this._map.isPermissionReadOnly()) {
                        switch (menuItem.id) {
                        case 'last-mod':
                        case 'save':
@@ -1422,7 +1422,7 @@ L.Control.Menubar = L.Control.extend({
                        var liItem = L.DomUtil.create('li', '');
                        if (menu[i].id) {
                                liItem.id = 'menu-' + menu[i].id;
-                               if (menu[i].id === 'closedocument' && 
this._map._permission === 'readonly') {
+                               if (menu[i].id === 'closedocument' && 
this._map.isPermissionReadOnly()) {
                                        // see corresponding css rule for 
readonly class usage
                                        L.DomUtil.addClass(liItem, 'readonly');
                                }
diff --git a/loleaflet/src/control/Control.MobileTopBar.js 
b/loleaflet/src/control/Control.MobileTopBar.js
index acfa82c7d..d754f0a19 100644
--- a/loleaflet/src/control/Control.MobileTopBar.js
+++ b/loleaflet/src/control/Control.MobileTopBar.js
@@ -208,7 +208,7 @@ L.Control.MobileTopBar = L.Control.extend({
                var commandName = e.commandName;
                var state = e.state;
 
-               if (this.map._permission === 'edit' && (state === 'enabled' || 
state === 'disabled')) {
+               if (this.map.isPermissionEdit() && (state === 'enabled' || 
state === 'disabled')) {
                        var id = window.unoCmdToToolbarId(commandName);
                        var toolbar = w2ui['actionbar'];
 
diff --git a/loleaflet/src/control/Control.MobileWizard.js 
b/loleaflet/src/control/Control.MobileWizard.js
index 406ba8716..4a4a1eba2 100644
--- a/loleaflet/src/control/Control.MobileWizard.js
+++ b/loleaflet/src/control/Control.MobileWizard.js
@@ -102,7 +102,7 @@ L.Control.MobileWizard = L.Control.extend({
 
                $('#mobile-wizard').hide();
                $('#mobile-wizard-content').empty();
-               if (this.map._permission === 'edit') {
+               if (this.map.isPermissionEdit()) {
                        $('#toolbar-down').show();
                }
                if (window.ThisIsTheAndroidApp)
diff --git a/loleaflet/src/control/Control.NotebookbarBuilder.js 
b/loleaflet/src/control/Control.NotebookbarBuilder.js
index 65edcd7ef..3e83417ad 100644
--- a/loleaflet/src/control/Control.NotebookbarBuilder.js
+++ b/loleaflet/src/control/Control.NotebookbarBuilder.js
@@ -396,7 +396,7 @@ L.Control.NotebookbarBuilder = 
L.Control.JSDialogBuilder.extend({
                $(control.container).unbind('click');
                $(control.container).click(function () {
                        // Save only when not read-only.
-                       if (builder.map._permission !== 'readonly') {
+                       if (!builder.map.isPermissionReadOnly()) {
                                builder.map.fire('postMessage', {msgId: 
'UI_Save'});
                                if 
(!builder.map._disableDefaultAction['UI_Save']) {
                                        builder.map.save(false, false);
diff --git a/loleaflet/src/control/Control.PresentationBar.js 
b/loleaflet/src/control/Control.PresentationBar.js
index dd10369b0..f91fbcd6b 100644
--- a/loleaflet/src/control/Control.PresentationBar.js
+++ b/loleaflet/src/control/Control.PresentationBar.js
@@ -158,7 +158,7 @@ L.Control.PresentationBar = L.Control.extend({
                var commandName = e.commandName;
                var state = e.state;
 
-               if (this.map._permission === 'edit' && (state === 'enabled' || 
state === 'disabled')) {
+               if (this.map.isPermissionEdit() && (state === 'enabled' || 
state === 'disabled')) {
                        var id = window.unoCmdToToolbarId(commandName);
 
                        if (id === 'deletepage' || id === 'insertpage' || id 
=== 'duplicatepage') {
diff --git a/loleaflet/src/control/Control.RowHeader.js 
b/loleaflet/src/control/Control.RowHeader.js
index d1f475723..27a681f18 100644
--- a/loleaflet/src/control/Control.RowHeader.js
+++ b/loleaflet/src/control/Control.RowHeader.js
@@ -98,7 +98,7 @@ L.Control.RowHeader = L.Control.Header.extend({
                        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') {
+                               if (this._map.isPermissionEdit()) {
                                        window.contextMenuWizard = true;
                                        this._map.fire('mobilewizard', 
menuData);
                                }
@@ -421,7 +421,7 @@ L.Control.RowHeader = L.Control.Header.extend({
                this.mouseInit(canvas);
 
                if ($('.spreadsheet-header-rows').length > 0) {
-                       
$('.spreadsheet-header-rows').contextMenu(this._map._permission === 'edit');
+                       
$('.spreadsheet-header-rows').contextMenu(this._map.isPermissionEdit());
                }
        },
 
diff --git a/loleaflet/src/control/Control.SearchBar.js 
b/loleaflet/src/control/Control.SearchBar.js
index d6714002a..14f4ac944 100644
--- a/loleaflet/src/control/Control.SearchBar.js
+++ b/loleaflet/src/control/Control.SearchBar.js
@@ -80,10 +80,10 @@ L.Control.SearchBar = L.Control.extend({
                }
                else if (id === 'hidesearchbar') {
                        $('#toolbar-search').hide();
-                       if (this.map._permission === 'edit')
+                       if (this.map.isPermissionEdit())
                                $('#toolbar-down').show();
                        /** show edit button if only we are able to edit but in 
readonly mode */
-                       if (window.docPermission  === 'edit' && 
this.map._permission === 'readonly')
+                       if (window.docPermission  === 'edit' && 
this.map.isPermissionReadOnly())
                                $('#mobile-edit-button').show();
                }
        },
diff --git a/loleaflet/src/control/Control.Tabs.js 
b/loleaflet/src/control/Control.Tabs.js
index 505fd51ce..7bb681364 100644
--- a/loleaflet/src/control/Control.Tabs.js
+++ b/loleaflet/src/control/Control.Tabs.js
@@ -131,7 +131,7 @@ L.Control.Tabs = L.Control.extend({
                                                        return function() {
                                                                
this._tabForContextMenu = j;
                                                                
window.contextMenuWizard = true;
-                                                               if 
(this._map._permission != 'readonly') this._map.fire('mobilewizard', menuData);
+                                                               if 
(!this._map.isPermissionReadOnly()) this._map.fire('mobilewizard', menuData);
                                                        };
                                                }(i).bind(this));
                                        } else {
diff --git a/loleaflet/src/control/Control.Toolbar.js 
b/loleaflet/src/control/Control.Toolbar.js
index 634e8bf32..2af35e1d1 100644
--- a/loleaflet/src/control/Control.Toolbar.js
+++ b/loleaflet/src/control/Control.Toolbar.js
@@ -83,7 +83,7 @@ function onClick(e, id, item) {
        }
        else if (id === 'save') {
                // Save only when not read-only.
-               if (map._permission !== 'readonly') {
+               if (!map.isPermissionReadOnly()) {
                        map.fire('postMessage', {msgId: 'UI_Save'});
                        if (!map._disableDefaultAction['UI_Save']) {
                                map.save(false /* An explicit save should 
terminate cell edit */, false /* An explicit save should save it again */);
@@ -557,10 +557,10 @@ function getColorPickerData(type) {
 }
 
 function onColorPick(id, color) {
-       if (map.getPermission() !== 'edit') {
+       if (!map.isPermissionEdit()) {
                return;
        }
-    // no fill or automatic color is -1
+       // no fill or automatic color is -1
        if (color === '') {
                color = -1;
        }
@@ -845,20 +845,20 @@ function onCommandStateChanged(e) {
                return;
 
        if (state === 'true') {
-               if (map._permission === 'edit') {
+               if (map.isPermissionEdit()) {
                        toolbar.enable(id);
                }
                toolbar.check(id);
        }
        else if (state === 'false') {
-               if (map._permission === 'edit') {
+               if (map.isPermissionEdit()) {
                        toolbar.enable(id);
                }
                toolbar.uncheck(id);
        }
        // Change the toolbar button states if we are in editmode
        // If in non-edit mode, will be taken care of when permission is 
changed to 'edit'
-       else if (map._permission === 'edit' && (state === 'enabled' || state 
=== 'disabled')) {
+       else if (map.isPermissionEdit() && (state === 'enabled' || state === 
'disabled')) {
                var toolbarUp = toolbar;
                if (state === 'enabled') {
                        toolbarUp.enable(id);
diff --git a/loleaflet/src/control/Parts.js b/loleaflet/src/control/Parts.js
index 72a213402..18ba9084d 100644
--- a/loleaflet/src/control/Parts.js
+++ b/loleaflet/src/control/Parts.js
@@ -190,7 +190,7 @@ L.Map.include({
                else if (typeof (page) === 'number' && page >= 0 && page < 
docLayer._pages) {
                        docLayer._currentPage = page;
                }
-               if (this._permission !== 'edit' && 
docLayer._partPageRectanglesPixels.length > docLayer._currentPage) {
+               if (!this.isPermissionEdit() && 
docLayer._partPageRectanglesPixels.length > docLayer._currentPage) {
                        // we can scroll to the desired page without having a 
LOK instance
                        var pageBounds = 
docLayer._partPageRectanglesPixels[docLayer._currentPage];
                        var pos = new L.Point(
diff --git a/loleaflet/src/control/Permission.js 
b/loleaflet/src/control/Permission.js
index 52e64a340..abccd8d06 100644
--- a/loleaflet/src/control/Permission.js
+++ b/loleaflet/src/control/Permission.js
@@ -84,7 +84,7 @@ L.Map.include({
        },
 
        _enterEditMode: function (perm) {
-               if (this._permission == 'readonly' && (window.mode.isMobile() 
|| window.mode.isTablet())) {
+               if (this.isPermissionReadOnly() && (window.mode.isMobile() || 
window.mode.isTablet())) {
                        this.sendInitUNOCommands();
                }
                this._permission = perm;
@@ -115,7 +115,7 @@ L.Map.include({
        },
 
        enableSelection: function () {
-               if (this._permission === 'edit') {
+               if (this.isPermissionEdit()) {
                        return;
                }
                this._socket.sendMessage('requestloksession');
@@ -123,7 +123,7 @@ L.Map.include({
        },
 
        disableSelection: function () {
-               if (this._permission === 'edit') {
+               if (this.isPermissionEdit()) {
                        return;
                }
                this.dragging.enable();
@@ -135,5 +135,13 @@ L.Map.include({
 
        getPermission: function () {
                return this._permission;
+       },
+
+       isPermissionReadOnly: function() {
+               return this._permission === 'readonly';
+       },
+
+       isPermissionEdit: function() {
+               return this._permission === 'edit';
        }
 });
diff --git a/loleaflet/src/control/Ruler.js b/loleaflet/src/control/Ruler.js
index e717d84e3..707a79dd8 100644
--- a/loleaflet/src/control/Ruler.js
+++ b/loleaflet/src/control/Ruler.js
@@ -494,7 +494,7 @@ L.Control.Ruler = L.Control.extend({
        },
 
        _initiateIndentationDrag: function(e) {
-               if (window.ThisIsTheiOSApp && this._map._permission !== 'edit')
+               if (window.ThisIsTheiOSApp && !this._map.isPermissionEdit())
                        return;
 
                this._map.rulerActive = true;
@@ -521,7 +521,7 @@ L.Control.Ruler = L.Control.extend({
                        e.clientX = e.touches[0].clientX;
                }
 
-               if (window.ThisIsTheiOSApp && this._map._permission !== 'edit')
+               if (window.ThisIsTheiOSApp && !this._map.isPermissionEdit())
                        return;
 
                this._map.rulerActive = true;
diff --git a/loleaflet/src/control/Toolbar.js b/loleaflet/src/control/Toolbar.js
index 26f8463c6..1b55c34b8 100644
--- a/loleaflet/src/control/Toolbar.js
+++ b/loleaflet/src/control/Toolbar.js
@@ -27,7 +27,7 @@ L.Map.include({
        },
 
        applyFont: function (fontName) {
-               if (this.getPermission() === 'edit') {
+               if (this.isPermissionEdit()) {
                        var msg = 'uno .uno:CharFontName {' +
                                '"CharFontName.FamilyName": ' +
                                        '{"type": "string", "value": "' + 
fontName + '"}}';
@@ -36,7 +36,7 @@ L.Map.include({
        },
 
        applyFontSize: function (fontSize) {
-               if (this.getPermission() === 'edit') {
+               if (this.isPermissionEdit()) {
                        var msg = 'uno .uno:FontHeight {' +
                                '"FontHeight.Height": ' +
                                '{"type": "float", "value": "' + fontSize + 
'"}}';
@@ -121,7 +121,7 @@ L.Map.include({
                        this.fire('error', {cmd: 'setStyle', kind: 
'incorrectparam'});
                        return;
                }
-               if (this._permission === 'edit') {
+               if (this.isPermissionEdit()) {
                        var msg = 'uno .uno:StyleApply {' +
                                        '"Style":{"type":"string", "value": "' 
+ style + '"},' +
                                        '"FamilyName":{"type":"string", 
"value":"' + familyName + '"}' +
@@ -135,7 +135,7 @@ L.Map.include({
                        this.fire('error', {cmd: 'setLayout', kind: 
'incorrectparam'});
                        return;
                }
-               if (this._permission === 'edit') {
+               if (this.isPermissionEdit()) {
                        var msg = 'uno .uno:AssignLayout {' +
                                        '"WhatPage":{"type":"unsigned short", 
"value": "' + this.getCurrentPartNumber() + '"},' +
                                        '"WhatLayout":{"type":"unsigned short", 
"value": "' + layout + '"}' +
@@ -158,13 +158,13 @@ L.Map.include({
 
        sendUnoCommand: function (command, json) {
                var isAllowedInReadOnly = command == '.uno:WordCountDialog';
-               if (this._permission === 'edit' || isAllowedInReadOnly) {
+               if (this.isPermissionEdit() || isAllowedInReadOnly) {
                        this._socket.sendMessage('uno ' + command + (json ? ' ' 
+ JSON.stringify(json) : ''));
                }
        },
 
        toggleCommandState: function (unoState) {
-               if (this._permission === 'edit') {
+               if (this.isPermissionEdit()) {
                        if (!unoState.startsWith('.uno:')) {
                                unoState = '.uno:' + unoState;
                        }
diff --git a/loleaflet/src/layer/marker/Annotation.js 
b/loleaflet/src/layer/marker/Annotation.js
index 423089011..05c9b59a2 100644
--- a/loleaflet/src/layer/marker/Annotation.js
+++ b/loleaflet/src/layer/marker/Annotation.js
@@ -212,7 +212,7 @@ L.Annotation = L.Layer.extend({
                this._contentAuthor = L.DomUtil.create(tagDiv, 
'loleaflet-annotation-content-author', tdAuthor);
                this._contentDate = L.DomUtil.create(tagDiv, 
'loleaflet-annotation-date', tdAuthor);
 
-               if (this._data.trackchange && this._map._permission !== 
'readonly') {
+               if (this._data.trackchange && 
!this._map.isPermissionReadOnly()) {
                        var tdAccept = L.DomUtil.create(tagTd, 
'loleaflet-annotation-menubar', tr);
                        var acceptButton = this._acceptButton = 
L.DomUtil.create('button', 'loleaflet-redline-accept-button', tdAccept);
                        var tdReject = L.DomUtil.create(tagTd, 
'loleaflet-annotation-menubar', tr);
diff --git a/loleaflet/src/layer/marker/TextInput.js 
b/loleaflet/src/layer/marker/TextInput.js
index 10c665d12..8e7196e96 100644
--- a/loleaflet/src/layer/marker/TextInput.js
+++ b/loleaflet/src/layer/marker/TextInput.js
@@ -161,7 +161,7 @@ L.TextInput = L.Layer.extend({
                // Clicking or otherwise focusing the map should focus on the 
clipboard
                // container in order for the user to input text (and on-screen 
keyboards
                // to pop-up), unless the document is read only.
-               if (this._map._permission !== 'edit') {
+               if (!this._map.isPermissionEdit()) {
                        this._setAcceptInput(false);
                        return;
                }
diff --git a/loleaflet/src/layer/tile/GridLayer.js 
b/loleaflet/src/layer/tile/GridLayer.js
index 91dd404e8..acc4b1b97 100644
--- a/loleaflet/src/layer/tile/GridLayer.js
+++ b/loleaflet/src/layer/tile/GridLayer.js
@@ -1188,7 +1188,7 @@ L.GridLayer = L.Layer.extend({
                var maxBorderWidth = 5;
                var tileBorderSrc;
 
-               if (this._map._permission === 'edit') {
+               if (this._map.isPermissionEdit()) {
                        tilesToFetch = 5;
                        maxBorderWidth = 3;
                }
diff --git a/loleaflet/src/layer/tile/TileLayer.TableOverlay.js 
b/loleaflet/src/layer/tile/TileLayer.TableOverlay.js
index 49b556aec..43e408b22 100644
--- a/loleaflet/src/layer/tile/TileLayer.TableOverlay.js
+++ b/loleaflet/src/layer/tile/TileLayer.TableOverlay.js
@@ -213,7 +213,7 @@ L.TileLayer.include({
                this._updateTableMarkers();
        },
        _onTableSelectedMsg: function (textMsg) {
-               if (this._map._permission !== 'edit') {
+               if (!this._map.isPermissionEdit()) {
                        this._clearTableMarkers();
                        return;
                }
diff --git a/loleaflet/src/layer/tile/TileLayer.js 
b/loleaflet/src/layer/tile/TileLayer.js
index c31d2a896..0e1845706 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -1123,7 +1123,7 @@ L.TileLayer = L.GridLayer.extend({
                        this._prevCellCursorXY = new L.Point(-1, -1);
                }
 
-               if (textMsg.match('EMPTY') || this._map._permission !== 'edit') 
{
+               if (textMsg.match('EMPTY') || !this._map.isPermissionEdit()) {
                        this._cellCursorTwips = new L.Bounds(new L.Point(0, 0), 
new L.Point(0, 0));
                        this._cellCursor = L.LatLngBounds.createDefault();
                        this._cellCursorXY = new L.Point(-1, -1);
@@ -1256,7 +1256,7 @@ L.TileLayer = L.GridLayer.extend({
                        this._showURLPopUp(cursorPos, obj.hyperlink.link);
                }
 
-               if (!this._map.editorHasFocus() && this._map._isCursorVisible 
&& (modifierViewId === this._viewId) && (this._map._permission === 'edit')) {
+               if (!this._map.editorHasFocus() && this._map._isCursorVisible 
&& (modifierViewId === this._viewId) && (this._map.isPermissionEdit())) {
                        // Regain cursor if we had been out of focus and now 
have input.
                        // Unless the focus is in the Calc Formula-Bar, don't 
steal the focus.
                        if (!this._map.calcInputBarHasFocus())
@@ -1799,7 +1799,7 @@ L.TileLayer = L.GridLayer.extend({
 
        _onTextSelectionEndMsg: function (textMsg) {
                var strTwips = textMsg.match(/\d+/g);
-               if (strTwips != null && this._map._permission === 'edit') {
+               if (strTwips != null && this._map.isPermissionEdit()) {
                        var topLeftTwips = new L.Point(parseInt(strTwips[0]), 
parseInt(strTwips[1]));
                        var offset = new L.Point(parseInt(strTwips[2]), 
parseInt(strTwips[3]));
                        var bottomRightTwips = topLeftTwips.add(offset);
@@ -1819,7 +1819,7 @@ L.TileLayer = L.GridLayer.extend({
 
        _onTextSelectionStartMsg: function (textMsg) {
                var strTwips = textMsg.match(/\d+/g);
-               if (strTwips != null && this._map._permission === 'edit') {
+               if (strTwips != null && this._map.isPermissionEdit()) {
                        var topLeftTwips = new L.Point(parseInt(strTwips[0]), 
parseInt(strTwips[1]));
                        var offset = new L.Point(parseInt(strTwips[2]), 
parseInt(strTwips[3]));
                        var bottomRightTwips = topLeftTwips.add(offset);
@@ -1840,7 +1840,7 @@ L.TileLayer = L.GridLayer.extend({
 
        _onCellSelectionAreaMsg: function (textMsg) {
                var strTwips = textMsg.match(/\d+/g);
-               if (strTwips != null && this._map._permission === 'edit') {
+               if (strTwips != null && this._map.isPermissionEdit()) {
                        var topLeftTwips = new L.Point(parseInt(strTwips[0]), 
parseInt(strTwips[1]));
                        var offset = new L.Point(parseInt(strTwips[2]), 
parseInt(strTwips[3]));
                        var bottomRightTwips = topLeftTwips.add(offset);
@@ -1857,7 +1857,7 @@ L.TileLayer = L.GridLayer.extend({
 
        _onCellAutoFillAreaMsg: function (textMsg) {
                var strTwips = textMsg.match(/\d+/g);
-               if (strTwips != null && this._map._permission === 'edit') {
+               if (strTwips != null && this._map.isPermissionEdit()) {
                        var topLeftTwips = new L.Point(parseInt(strTwips[0]), 
parseInt(strTwips[1]));
                        var offset = new L.Point(parseInt(strTwips[2]), 
parseInt(strTwips[3]));
                        var bottomRightTwips = topLeftTwips.add(offset);
@@ -2051,7 +2051,7 @@ L.TileLayer = L.GridLayer.extend({
        },
 
        _mapOnError: function (e) {
-               if (e.msg && this._map._permission === 'edit') {
+               if (e.msg && this._map.isPermissionEdit()) {
                        this._map.setPermission('view');
                }
        },
@@ -2252,7 +2252,7 @@ L.TileLayer = L.GridLayer.extend({
        // enable or disable blinking cursor and  the cursor overlay depending 
on
        // the state of the document (if the falgs are set)
        _updateCursorAndOverlay: function (/*update*/) {
-               if (this._map._permission === 'edit'
+               if (this._map.isPermissionEdit()
                && this._map._isCursorVisible   // only when LOK has told us it 
is ok
                && this._map.editorHasFocus()   // not when document is not 
focused
                && !this._map.isSearching()     // not when searching within 
the doc
@@ -2870,7 +2870,7 @@ L.TileLayer = L.GridLayer.extend({
                                this._map.removeLayer(this._graphicMarker);
                        }
 
-                       if (this._map._permission !== 'edit') {
+                       if (!this._map.isPermissionEdit()) {
                                return;
                        }
 
diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js
index 2365b4bcc..5fdc1520d 100644
--- a/loleaflet/src/map/Map.js
+++ b/loleaflet/src/map/Map.js
@@ -199,7 +199,7 @@ L.Map = L.Evented.extend({
                                this._fireInitComplete('doclayerinit');
                        }
                        if ((window.mode.isTablet() || window.mode.isDesktop()) 
&& this._docLayer._docType == 'text') {
-                               var interactiveRuler = this._permission === 
'edit' ? true : false;
+                               var interactiveRuler = this.isPermissionEdit();
                                L.control.ruler({position:'topleft', 
interactive:interactiveRuler}).addTo(this);
                        }
                        if (this._docLayer._docType === 'text') {
@@ -1493,7 +1493,7 @@ L.Map = L.Evented.extend({
                if (type === 'click' || type === 'dblclick' || (type === 
'mouseup' &&
                                         typeof this._container._wasSingleTap 
!== 'undefined' &&
                                         this._container._wasSingleTap)) {
-                       if (this._permission === 'edit') {
+                       if (this.isPermissionEdit()) {
                                this.fire('editorgotfocus');
                                this.focus();
                        }
diff --git a/loleaflet/src/map/handler/Map.Keyboard.js 
b/loleaflet/src/map/handler/Map.Keyboard.js
index 6ea10c40e..405b73995 100644
--- a/loleaflet/src/map/handler/Map.Keyboard.js
+++ b/loleaflet/src/map/handler/Map.Keyboard.js
@@ -324,7 +324,7 @@ L.Map.Keyboard = L.Handler.extend({
                        }
                }
 
-               if (this._map._permission === 'edit') {
+               if (this._map.isPermissionEdit()) {
                        docLayer._resetPreFetching();
 
                        if (this._ignoreKeyEvent(ev)) {
@@ -519,7 +519,7 @@ L.Map.Keyboard = L.Handler.extend({
                        return true;
                case 83: // s
                        // Save only when not read-only.
-                       if (this._map._permission !== 'readonly') {
+                       if (!this._map.isPermissionReadOnly()) {
                                this._map.fire('postMessage', {msgId: 
'UI_Save'});
                                if 
(!this._map._disableDefaultAction['UI_Save']) {
                                        this._map.save(false /* An explicit 
save should terminate cell edit */,
diff --git a/loleaflet/src/map/handler/Map.Mouse.js 
b/loleaflet/src/map/handler/Map.Mouse.js
index cb5b4d91c..0daa13792 100644
--- a/loleaflet/src/map/handler/Map.Mouse.js
+++ b/loleaflet/src/map/handler/Map.Mouse.js
@@ -141,7 +141,7 @@ L.Map.Mouse = L.Handler.extend({
                                this._clickCount = 1;
                                mousePos = docLayer._latLngToTwips(e.latlng);
                                var timeOut = 250;
-                               if (this._map._permission === 'edit') {
+                               if (this._map.isPermissionEdit()) {
                                        timeOut = 0;
                                }
                                this._mouseEventsQueue.push(L.bind(function() {
diff --git a/loleaflet/src/map/handler/Map.TouchGesture.js 
b/loleaflet/src/map/handler/Map.TouchGesture.js
index 2a17360e2..15bb932d4 100644
--- a/loleaflet/src/map/handler/Map.TouchGesture.js
+++ b/loleaflet/src/map/handler/Map.TouchGesture.js
@@ -350,7 +350,7 @@ L.Map.TouchGesture = L.Handler.extend({
                                acceptInput = (cellCursor && 
cellCursor.contains(latlng));
                                if (acceptInput) {
                                        // Enter cell-edit mode on second tap 
of a selected cell.
-                                       if (this._map._permission === 'edit') {
+                                       if (this._map.isPermissionEdit()) {
                                                
docLayer.postKeyboardEvent('input', 0, 769); // F2
                                                sendMouseEvents = false; // 
Mouse events will exit editing mode.
                                        }
@@ -380,7 +380,7 @@ L.Map.TouchGesture = L.Handler.extend({
                if (docLayer) {
                        if (docLayer._docType === 'spreadsheet' && 
!docLayer.hasGraphicSelection()) {
                                // Enter cell-edit mode on double-taping a cell.
-                               if (this._map._permission === 'edit') {
+                               if (this._map.isPermissionEdit()) {
                                        docLayer.postKeyboardEvent('input', 0, 
769); // F2
                                }
                        } else {
diff --git a/loleaflet/src/map/handler/Map.WOPI.js 
b/loleaflet/src/map/handler/Map.WOPI.js
index 3e41b7fae..39c1520fe 100644
--- a/loleaflet/src/map/handler/Map.WOPI.js
+++ b/loleaflet/src/map/handler/Map.WOPI.js
@@ -286,7 +286,7 @@ L.Map.WOPI = L.Handler.extend({
                        if (msg.Values) {
                                if (msg.Values.id && 
!w2ui['editbar'].get(msg.Values.id)
                                    && msg.Values.imgurl) {
-                                       if (this._map._permission === 'edit') {
+                                       if (this._map.isPermissionEdit()) {
                                                // add the css rule for the 
image
                                                var style = $('html > head > 
style');
                                                if (style.length == 0)
@@ -316,7 +316,7 @@ L.Map.WOPI = L.Handler.extend({
                                                        
toolbarUpMobileItems.splice(idx, 0, msg.Values.id);
                                                }
                                        }
-                                       else if (this._map._permission === 
'readonly') {
+                                       else if 
(this._map.isPermissionReadOnly()) {
                                                // Just add a menu entry for it
                                                this._map.fire('addmenu', {id: 
msg.Values.id, label: msg.Values.hint});
                                        }
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to