Mike Chambers
04/15/2026, 1:16 PMMike Chambers
04/15/2026, 1:18 PMLuuk Peters (Proud Nerds)
04/15/2026, 2:18 PMLuuk Peters (Proud Nerds)
04/15/2026, 2:18 PMMike Chambers
04/15/2026, 3:28 PMview/content /// but seems hacky and might lag instantiation.
Though actually works quite nicely on the Info tab too...
https://cdn.discordapp.com/attachments/1493963272498446516/1493996328223641770/image.png?ex=69e10001&is=69dfae81&hm=b69bd31ee2dca8fd3844e413df5d3151fb142bedd0752a6c7f6b85234bd9220c&Mike Chambers
04/15/2026, 4:25 PMUMB_DOCUMENT_WORKSPACE_CONTEXT, seem to have
workspace.view but the viewAlias always seems to be undefined.
ended up reverting to monitoring the dom.. which seems a little hacky..
ts
_startMonitoring() {
console.log("🚀 JumpMenu Manager: Monitoring DOM");
if (this._timer) clearInterval(this._timer);
this._timer = setInterval(() => {
const currentUrl = globalThis.location.href;
const isAllowedTab = currentUrl.includes('/view/content') || currentUrl.includes('/view/info');
if (currentUrl !== this._lastUrl) {
console.log("📍 URL Change detected:", currentUrl);
this._lastUrl = currentUrl;
this._stableCount = 0; // Reset stability on tab change
this._cleanup();
}
if (isAllowedTab) {
const injectedCount = this._inject();
// If we injected something, reset stability.
// If we didn't, increment stability.
if (injectedCount > 0) {
this._stableCount = 0;
} else {
this._stableCount++;
}
// If the DOM has been stable for 10 cycles (approx 10 seconds),
// we assume the workspace has completed loading and slow down.
if (this._stableCount > 10) {
this._hibernate();
}
}
}, 1000);
}Mike Chambers
04/15/2026, 6:06 PMjs
_observe(root) {
const obs = new MutationObserver(() => this._triggerInject());
obs.observe(root, { childList: true, subtree: true });
this._observers.add(obs);
}