diff --git a/bundled-addons/blocker/panel.html b/bundled-addons/blocker/panel.html index 1deaab0b..b5d263e6 100644 --- a/bundled-addons/blocker/panel.html +++ b/bundled-addons/blocker/panel.html @@ -17,6 +17,10 @@ body { background: var(--bg); color: var(--ink); font: 13px/1.5 system-ui, -appl header { display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-bottom: 1px solid var(--line); background: var(--panel); } header h1 { margin: 0; font-size: 14px; font-weight: 600; } header .pill { margin-left: auto; } +header .close { width: 24px; height: 24px; border: 0; border-radius: 6px; background: transparent; color: var(--mut); cursor: pointer; padding: 0; display: inline-grid; place-items: center; } +header .close:hover { background: rgba(255,255,255,.08); color: var(--ink); } +header .close svg { width: 14px; height: 14px; display: block; } +@media (prefers-color-scheme: light) { header .close:hover { background: rgba(0,0,0,.06); } } .pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 9px; border-radius: 999px; font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; background: rgba(139,152,169,.14); color: var(--mut); } @@ -52,7 +56,7 @@ h2 { margin: 0 0 8px; font-size: 11px; font-weight: 600; letter-spacing: .06em; -
🛡

Shield

…
+
🛡

Shield

…
Open a site to see what Shield stops there.
@@ -116,6 +120,10 @@ h2 { margin: 0 0 8px; font-size: 11px; font-weight: 600; letter-spacing: .06em; } $("enabled").onclick = () => window.silentmode.invoke("set-enabled", { enabled: !(state && state.enabled) }).then(render); $("toSettings").onclick = (e) => { e.preventDefault(); window.silentmode.invoke("open-settings"); }; + // Close the Shield panel. Right-side add-on panels have no Theseus-drawn + // chrome (unlike left panels, which get the shared panel-header with a + // close button), so the panel ships its own. + $("close").onclick = () => { try { window.silentmode.close(); } catch (e) {} }; $("refresh").onclick = () => { $("refresh").disabled = true; window.silentmode.invoke("refresh-lists").then((r) => { if (r && !r.ok) $("updated").textContent = "Update failed: " + (r.error || "unknown"); }); }; window.silentmode.on("state", render); window.silentmode.invoke("state").then(render);