fix(ui): actionable toasts linger, and a dead hotkey shows in the sidebar

Every toast auto-dismissed after 2.8 s — fine for a success receipt, too
short to read AND act on an error. Errors and warnings now stay 10 s and can
be clicked away; success is unchanged.

The hotkey-conflict warning also needed a trace outside the toast: the ⚠ in
Settings only helps someone who opens the panel. A dot on the sidebar Settings
entry (plus a tooltip) is now the cue in the main UI that a combo is dead.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
r-zakarya
2026-07-25 18:10:17 +01:00
parent feb956001e
commit 3513e7b6e5
4 changed files with 35 additions and 2 deletions
+11
View File
@@ -36,6 +36,17 @@ function renderHotkeyConflicts() {
'the hotkey does nothing. Pick another one.';
else btn.removeAttribute('title');
}
// Dot on the Settings button: the ⚠ inside the panel only helps someone who
// opens it, and the toast may well have been missed. This is the only cue
// left in the main UI that a hotkey is silently dead.
const gear = document.getElementById('settingsBtn');
if (gear) {
gear.classList.toggle('has-alert', bad.size > 0);
if (bad.size > 0)
gear.title = 'A hotkey combo is already used by another app — see Autofill settings';
else if (gear.title.startsWith('A hotkey combo'))
gear.title = 'Settings';
}
}
// Format a combo for human display: "Ctrl+Shift+L".