[fix](trx-frontend-http): fix map not loading on direct /map navigation

navigateToTab now calls loadPluginsForTab to ensure map-core.js is
injected on initial page load from /map URL. map-core.js auto-inits the
map if the map tab is already visible when the module loads.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
2026-04-01 18:47:09 +02:00
parent 4fe6d1fcf7
commit cb78070c59
2 changed files with 14 additions and 0 deletions
@@ -4373,6 +4373,7 @@ function navigateToTab(name, options = {}) {
updateTabHistory(name, replaceHistory);
}
scheduleSpectrumLayout();
if (typeof window.loadPluginsForTab === "function") window.loadPluginsForTab(name);
if (name === "map") {
window.trx.map?.initAprsMap();
window.trx.map?.sizeAprsMapToViewport();
@@ -3424,6 +3424,16 @@
}
// Auto-init map if the map tab is already visible (e.g. direct /map navigation)
function autoInitIfVisible() {
const panel = document.getElementById("tab-map");
if (panel && panel.style.display !== "none") {
initAprsMap();
sizeAprsMapToViewport();
if (aprsMap) setTimeout(() => aprsMap.invalidateSize(), 50);
}
}
// Register module API for core to call
window.trx.map = {
initAprsMap,
@@ -3472,4 +3482,7 @@
flushDeferredDecodeMapSync,
bandForHz,
};
// If the map tab is already visible (direct /map URL), init immediately.
autoInitIfVisible();
})();