From bf774e4c2a6a03aa01d4bcd9f5ce4f960cd91874 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 12 Feb 2020 08:14:22 +0100 Subject: [PATCH] luci-base: ui.js: dispatch "cbi-tab-active" event when a tab is selected This is useful to lazy-load tab contents. Signed-off-by: Jo-Philipp Wich --- modules/luci-base/htdocs/luci-static/resources/ui.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/luci-base/htdocs/luci-static/resources/ui.js b/modules/luci-base/htdocs/luci-static/resources/ui.js index 7cf4f4102..445857360 100644 --- a/modules/luci-base/htdocs/luci-static/resources/ui.js +++ b/modules/luci-base/htdocs/luci-static/resources/ui.js @@ -2244,6 +2244,10 @@ return L.Class.extend({ this.setActiveTabId(panes[selected], selected); } + panes[selected].dispatchEvent(new CustomEvent('cbi-tab-active', { + detail: { tab: panes[selected].getAttribute('data-tab') } + })); + this.updateTabs(group); }, @@ -2354,6 +2358,7 @@ return L.Class.extend({ if (L.dom.matches(pane, '[data-tab]')) { if (pane.getAttribute('data-tab') === name) { pane.setAttribute('data-tab-active', 'true'); + pane.dispatchEvent(new CustomEvent('cbi-tab-active', { detail: { tab: name } })); L.ui.tabs.setActiveTabId(pane, index); } else { -- 2.25.1