fix(hotkey): surface Esc-to-cancel hint and replace recording-keyframe reuse with success flash

Two scoped fixes to HotkeyRecorder:

- Append "Esc to cancel." to the recording prompt so the existing Escape
  handler is discoverable. srStatus already mentions Escape; no harmonisation
  needed.
- Replace animate-pulse-warm on the captured state with a static
  bg-success/10 + border-success/40 flash. pulse-warm is the
  recording-active keyframe; reusing it for the saved state muddled the
  visual vocabulary. The global * transition rule already animates
  background-color and border-color over --duration-ui (150ms) with the
  brand cubic-bezier ease, so no new keyframe is needed and prefers-reduced-motion
  is honoured automatically. Also swapped transition-all for transition-colors
  to comply with the no-transition-all brand-motion rule.
This commit is contained in:
2026-05-07 10:02:08 +01:00
parent a4cca58289
commit 13af425dfa

View File

@@ -189,16 +189,16 @@
{recording
? 'bg-bg-input border-accent shadow-[0_0_0_3px_rgba(201,133,85,0.1)]'
: captured
? 'bg-bg-input border-border animate-pulse-warm'
? 'bg-success/10 border-success/40'
: 'bg-bg-input border-border hover:border-border'}
border transition-all"
border transition-colors"
onclick={startRecording}
aria-label={ariaLabel}
aria-pressed={recording}
>
<span class="sr-only" aria-live="polite">{srStatus}</span>
{#if recording}
<span class="text-[11px] text-text-tertiary italic">Hold Ctrl/Alt/Super + key...</span>
<span class="text-[11px] text-text-tertiary italic">Hold Ctrl/Alt/Super + key. Esc to cancel.</span>
{:else}
{#each chips as chip, i}
{#if i > 0}