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

Szymon KÅ‚os (via logerrit) logerrit at kemper.freedesktop.org
Fri Jul 31 12:17:17 UTC 2020


 loleaflet/css/notebookbar.css                    |    4 ++++
 loleaflet/src/control/Control.JSDialogBuilder.js |   13 +++++++++++++
 loleaflet/src/layer/tile/TileLayer.js            |    1 +
 loleaflet/src/map/Map.js                         |    2 ++
 4 files changed, 20 insertions(+)

New commits:
commit ad4f53aa4df4bc855dbfda105e001a440dbdbd78
Author:     Szymon Kłos <szymon.klos at collabora.com>
AuthorDate: Fri Jul 31 13:06:46 2020 +0200
Commit:     Szymon Kłos <szymon.klos at collabora.com>
CommitDate: Fri Jul 31 14:16:58 2020 +0200

    notebookar: show tabs depending on context
    
    If tab is marked with context, show it only in that context.
    Exception: tab with 'default' is shown always
    
    Change-Id: Id3ae82cc9188c0e5050d5e78629ce4dea98049c4
    Reviewed-on: https://gerrit.libreoffice.org/c/online/+/99864
    Tested-by: Jenkins
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Szymon Kłos <szymon.klos at collabora.com>

diff --git a/loleaflet/css/notebookbar.css b/loleaflet/css/notebookbar.css
index 69fa813ac..07d494bed 100644
--- a/loleaflet/css/notebookbar.css
+++ b/loleaflet/css/notebookbar.css
@@ -20,6 +20,10 @@
 	padding-top: 7px;
 }
 
+.ui-tab.hidden.notebookbar {
+	display: none;
+}
+
 .ui-tab.selected.notebookbar {
 	border: none;
 	border-radius: 0px;
diff --git a/loleaflet/src/control/Control.JSDialogBuilder.js b/loleaflet/src/control/Control.JSDialogBuilder.js
index 3a99fef0d..d3b1fe202 100644
--- a/loleaflet/src/control/Control.JSDialogBuilder.js
+++ b/loleaflet/src/control/Control.JSDialogBuilder.js
@@ -683,8 +683,21 @@ L.Control.JSDialogBuilder = L.Control.extend({
 				var tab = L.DomUtil.create('div', 'ui-tab ' + builder.options.cssClass, tabsContainer);
 				tab.id = data.tabs[tabIdx].name;
 				tab.number = data.tabs[tabIdx].id - 1;
+
 				if (data.selected == data.tabs[tabIdx].id)
 					$(tab).addClass('selected');
+
+				var tabContext = data.tabs[tabIdx].context;
+				if (tabContext) {
+					var tabHasCurrentContext = builder.map.context.context !== ''
+											&& tabContext.indexOf(builder.map.context.context) !== -1;
+					var tabHasDefultContext = tabContext.indexOf('default') !== -1;
+
+					if (!tabHasCurrentContext && !tabHasDefultContext) {
+						$(tab).addClass('hidden');
+					}
+				}
+
 				tabs[tabIdx] = tab;
 				tabIds[tabIdx] = tab.id;
 
diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js
index 54e640ca9..e0f1b8d37 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -732,6 +732,7 @@ L.TileLayer = L.GridLayer.extend({
 			var message = textMsg.substring('context:'.length + 1);
 			message = message.split(' ');
 			if (message.length > 1) {
+				this._map.context = {context: message[1]};
 				this._map.fire('contextchange', {context: message[1]});
 			}
 		}
diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js
index bc5776aaa..ac6c6da9b 100644
--- a/loleaflet/src/map/Map.js
+++ b/loleaflet/src/map/Map.js
@@ -51,6 +51,8 @@ L.Map = L.Evented.extend({
 	// Control.LokDialog instance, is set in Control.UIManager.js
 	dialog: null,
 
+	context: {context: ''},
+
 	lastActiveTime: Date.now(),
 
 	initialize: function (id, options) { // (HTMLElement or String, Object)


More information about the Libreoffice-commits mailing list