From ca7cbf98ec27a1d66ac051c0195efe8545f3cd4d Mon Sep 17 00:00:00 2001 From: BlackAngelTVdev Date: Thu, 28 May 2026 21:12:45 +0200 Subject: [PATCH] feat(router): use page when injecting pages, fallback to generated title --- p/assets/main-nav/app.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/p/assets/main-nav/app.js b/p/assets/main-nav/app.js index e94c0aa..812f3b4 100644 --- a/p/assets/main-nav/app.js +++ b/p/assets/main-nav/app.js @@ -168,6 +168,13 @@ const injected = parsed.querySelector("[data-page-content]") ?? parsed.body; main.innerHTML = injected.innerHTML.trim(); await injectPageScripts(parsed, response.url); + // Update document title from the fetched page if present, otherwise use generated title + const pageTitleEl = parsed.querySelector("title"); + if (pageTitleEl && pageTitleEl.textContent && pageTitleEl.textContent.trim()) { + document.title = pageTitleEl.textContent.trim(); + } else { + document.title = routeToTitle(route); + } } function render(route, { replaceHistory = false } = {}) { @@ -177,7 +184,6 @@ .then(() => { setActiveRoute(safeRoute); setCanonicalUrl(safeRoute, replaceHistory); - document.title = routeToTitle(safeRoute); window.scrollTo({ top: 0, behavior: "smooth" }); }) .catch((error) => {