loleaflet/src/control/Control.Toolbar.js     |   42 ++++++++++++---------------
 loleaflet/src/layer/tile/CalcTileLayer.js    |    3 -
 loleaflet/src/layer/tile/ImpressTileLayer.js |    3 -
 loleaflet/src/layer/tile/TileLayer.js        |   32 --------------------
 loleaflet/src/layer/tile/WriterTileLayer.js  |    3 -
 5 files changed, 19 insertions(+), 64 deletions(-)

New commits:
commit 75b6178d3315d5aceb5624105f64b24fdd1c7ea3
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Fri Mar 27 13:51:45 2020 +0100
Commit:     Jan Holesovsky <ke...@collabora.com>
CommitDate: Fri Mar 27 15:02:19 2020 +0100

    user list: Centralize the check whether it should be visible or not.
    
    This fixes the initial blink of the dropdown with '0' in there and
    considerably simplifies the code.
    
    Change-Id: Id2ca81ba4c06f417ae102f1ce60cae767e1c62cf
    Reviewed-on: https://gerrit.libreoffice.org/c/online/+/91206
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Jan Holesovsky <ke...@collabora.com>

diff --git a/loleaflet/src/control/Control.Toolbar.js 
b/loleaflet/src/control/Control.Toolbar.js
index 6df3d20ea..c09f4a427 100644
--- a/loleaflet/src/control/Control.Toolbar.js
+++ b/loleaflet/src/control/Control.Toolbar.js
@@ -1173,20 +1173,6 @@ function initNormalToolbar() {
                        onRefresh: function() {
                                $('#tb_actionbar_item_userlist 
.w2ui-tb-caption').addClass('loleaflet-font');
                                setupSearchInput();
-
-                               var hideInDesktop =
-                                       map['wopi'].HideUserList !== null &&
-                                       map['wopi'].HideUserList !== undefined 
&&
-                                       ($.inArray('true', 
map['wopi'].HideUserList) >= 0 ||
-                                        $.inArray('desktop', 
map['wopi'].HideUserList) >= 0);
-
-                               if (this.get('userlist') && 
this.get('userlist').hidden === true && !hideInDesktop) {
-                                       this.show('userlist');
-                                       this.show('userlistbreak');
-                                       map.on('deselectuser', deselectUser);
-                                       map.on('addview', onAddView);
-                                       map.on('removeview', onRemoveView);
-                               }
                        }
                });
        }
@@ -2470,7 +2456,8 @@ function getUserItem(viewId, userName, extraInfo, color) {
 }
 
 function updateUserListCount() {
-       var userlistItem = w2ui.actionbar && w2ui['actionbar'].get('userlist');
+       var actionbar = w2ui.actionbar;
+       var userlistItem = actionbar && actionbar.get('userlist');
        if (userlistItem == null) {
                return;
        }
@@ -2486,12 +2473,20 @@ function updateUserListCount() {
 
        w2ui['actionbar'].refresh();
 
-       if (count > 1) {
-               $('#tb_actionbar_item_userlist').show();
-               $('#tb_actionbar_item_userlistbreak').show();
+       var hideUserList =
+               window.ThisIsAMobileApp ||
+               (map['wopi'].HideUserList !== null && map['wopi'].HideUserList 
!== undefined &&
+                       ($.inArray('true', map['wopi'].HideUserList) >= 0) ||
+                       (window.mode.isMobile() && $.inArray('mobile', 
map['wopi'].HideUserList) >= 0) ||
+                       (window.mode.isTablet() && $.inArray('tablet', 
map['wopi'].HideUserList) >= 0) ||
+                       (window.mode.isDesktop() && $.inArray('desktop', 
map['wopi'].HideUserList) >= 0));
+
+       if (!hideUserList && count > 1) {
+               actionbar.show('userlist');
+               actionbar.show('userlistbreak');
        } else {
-               $('#tb_actionbar_item_userlist').hide();
-               $('#tb_actionbar_item_userlistbreak').hide();
+               actionbar.hide('userlist');
+               actionbar.hide('userlistbreak');
        }
 }
 
@@ -2683,6 +2678,10 @@ function setupToolbar(e) {
        map.on('commandstatechanged', onCommandStateChanged);
        map.on('commandvalues', onCommandValues, this);
 
+       map.on('deselectuser', deselectUser);
+       map.on('addview', onAddView);
+       map.on('removeview', onRemoveView);
+
        if (!L.Params.closeButtonEnabled) {
                $('#closebuttonwrapper').hide();
        } else if (L.Params.closeButtonEnabled && !L.Browser.mobile) {
@@ -2702,9 +2701,6 @@ function setupToolbar(e) {
 global.setupToolbar = setupToolbar;
 global.onClick = onClick;
 global.hideTooltip = hideTooltip;
-global.deselectUser = deselectUser;
-global.onAddView = onAddView;
-global.onRemoveView = onRemoveView;
 global.onAddressInput = onAddressInput;
 global.onFormulaInput = onFormulaInput;
 global.onFormulaBarBlur = onFormulaBarBlur;
diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js 
b/loleaflet/src/layer/tile/CalcTileLayer.js
index 288a7322e..505b7f5de 100644
--- a/loleaflet/src/layer/tile/CalcTileLayer.js
+++ b/loleaflet/src/layer/tile/CalcTileLayer.js
@@ -127,9 +127,6 @@ L.CalcTileLayer = L.TileLayer.extend({
                        onClick: function (e) {
                                window.onClick(e, e.target);
                                window.hideTooltip(this, e.target);
-                       },
-                       onRefresh: function() {
-                               L.TileLayer.prototype._onUserListRefresh(map, 
this);
                        }
                });
                toolbar.bind('touchstart', function(e) {
diff --git a/loleaflet/src/layer/tile/ImpressTileLayer.js 
b/loleaflet/src/layer/tile/ImpressTileLayer.js
index 3938a973a..494fa56da 100644
--- a/loleaflet/src/layer/tile/ImpressTileLayer.js
+++ b/loleaflet/src/layer/tile/ImpressTileLayer.js
@@ -162,9 +162,6 @@ L.ImpressTileLayer = L.TileLayer.extend({
                        onClick: function (e) {
                                window.onClick(e, e.target);
                                window.hideTooltip(this, e.target);
-                       },
-                       onRefresh: function() {
-                               L.TileLayer.prototype._onUserListRefresh(map, 
this);
                        }
                });
                toolbar.bind('touchstart', function(e) {
diff --git a/loleaflet/src/layer/tile/TileLayer.js 
b/loleaflet/src/layer/tile/TileLayer.js
index 906fd3100..dfe755b64 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -1417,38 +1417,6 @@ L.TileLayer = L.GridLayer.extend({
                this._map.fire('updateviewslist');
        },
 
-       _onUserListRefresh: function(map, toolbar) {
-               var hideUserList =
-                       window.ThisIsAMobileApp ||
-                       (map['wopi'].HideUserList !== null && 
map['wopi'].HideUserList !== undefined &&
-                               ($.inArray('true', map['wopi'].HideUserList) >= 
0) ||
-                               (window.mode.isMobile() && $.inArray('mobile', 
map['wopi'].HideUserList) >= 0) ||
-                               (window.mode.isTablet() && $.inArray('tablet', 
map['wopi'].HideUserList) >= 0));
-
-               map.off('deselectuser', window.deselectUser);
-               map.off('addview', window.onAddView);
-               map.off('removeview', window.onRemoveView);
-
-               if (!hideUserList) {
-                       map.on('deselectuser', window.deselectUser);
-                       map.on('addview', window.onAddView);
-                       map.on('removeview', window.onRemoveView);
-               }
-
-               // Otherwise we can get an infinte, fast busy timeout loop.
-               if (toolbar.get('userlist').hidden === hideUserList)
-                       return;
-
-               if (hideUserList) {
-                       toolbar.hide('userlist');
-                       toolbar.hide('userlistbreak');
-               }
-               else {
-                       toolbar.show('userlist');
-                       toolbar.show('userlistbreak');
-               }
-       },
-
        _onRenderFontMsg: function (textMsg, img) {
                var command = this._map._socket.parseServerCmd(textMsg);
                this._map.fire('renderfont', {
diff --git a/loleaflet/src/layer/tile/WriterTileLayer.js 
b/loleaflet/src/layer/tile/WriterTileLayer.js
index 846516022..43ce0f917 100644
--- a/loleaflet/src/layer/tile/WriterTileLayer.js
+++ b/loleaflet/src/layer/tile/WriterTileLayer.js
@@ -107,9 +107,6 @@ L.WriterTileLayer = L.TileLayer.extend({
                        onClick: function (e) {
                                window.onClick(e, e.target);
                                window.hideTooltip(this, e.target);
-                       },
-                       onRefresh: function() {
-                               L.TileLayer.prototype._onUserListRefresh(map, 
this);
                        }
                });
                toolbar.bind('touchstart', function(e) {
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to