From 67c306293cc17fd0a1fa4d0c5384ab48d1f5a2f2 Mon Sep 17 00:00:00 2001 From: Local Dev Date: Sun, 6 Sep 2026 01:46:58 +0200 Subject: [PATCH] feat(theseus/tabs): title + URL tooltip on hover Every .tab now carries a native title="\n<url>" so hovering the tab shows the page's own title and the URL (the way Chrome/Firefox do it). Uses the url already present in the per-tab payload emitTabs sends; no extra IPC. --- chrome.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chrome.html b/chrome.html index 28d8caf..9431ea3 100644 --- a/chrome.html +++ b/chrome.html @@ -710,7 +710,8 @@ ? '<span class="spin"></span>' : (t.favicon ? `<img class="fav" src="${String(t.favicon).replace(/"/g,""")}" onerror="this.remove()">` : ''); const mute = t.muted ? `<span class="mute" title="Muted">🔇</span>` : ""; - out += `<div class="tab ${t.active ? "active" : ""}${t.group ? " grp g-" + t.group : ""}" data-id="${t.id}" draggable="true">${icon}<span class="t">${(t.title||"New Tab").replace(/</g,"<")}</span>${mute}<span class="x" data-close="${t.id}">✕</span></div>`; + const tt = ((t.title || "New Tab") + (t.url ? "\n" + t.url : "")).replace(/"/g, """); + out += `<div class="tab ${t.active ? "active" : ""}${t.group ? " grp g-" + t.group : ""}" data-id="${t.id}" draggable="true" title="${tt}">${icon}<span class="t">${(t.title||"New Tab").replace(/</g,"<")}</span>${mute}<span class="x" data-close="${t.id}">✕</span></div>`; return out; }).join("") + `<span class="newtab" id="newtab">+</span>`;