[Libreoffice-commits] online.git: loleaflet/src

Jan Holesovsky (via logerrit) logerrit at kemper.freedesktop.org
Fri Mar 27 14:02:42 UTC 2020


 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 <kendy at collabora.com>
AuthorDate: Fri Mar 27 13:51:45 2020 +0100
Commit:     Jan Holesovsky <kendy at 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 <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Jan Holesovsky <kendy at 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) {


More information about the Libreoffice-commits mailing list