diff --git a/PlotLine/wwwroot/js/site.js b/PlotLine/wwwroot/js/site.js index 2d7260c..cbe2060 100644 --- a/PlotLine/wwwroot/js/site.js +++ b/PlotLine/wwwroot/js/site.js @@ -215,7 +215,24 @@ }); popovers.set(icon, popover); - icon.addEventListener("show.bs.popover", () => { + icon.addEventListener("click", (event) => { + if (!window.PlotWeaverHelpDrawer?.isActive?.()) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + hideActivePopover(); + hideTooltip(icon); + window.PlotWeaverHelpPopovers?.hideAll(); + window.PlotWeaverHelpDrawer.open(icon.dataset.helpKey || ""); + }); + icon.addEventListener("show.bs.popover", (event) => { + if (window.PlotWeaverHelpDrawer?.isActive?.()) { + event.preventDefault(); + return; + } + hideActivePopover(icon); hideTooltip(icon); }); @@ -357,6 +374,15 @@ setPinned(false); }; + window.PlotWeaverHelpDrawer = { + isActive() { + return layout.classList.contains("help-open"); + }, + open(key) { + return openDrawer(key); + } + }; + setWidth(localStorage.getItem(storage.width) || "25%"); setPinned(readBool(storage.pinned)); setCollapsed(readBool(storage.collapsed));