Changelog

v1.1.6

Subtitle mode now rides out network hiccups and stays up for a long time.

In subtitle mode, the overlay no longer disappears on a dropped connection — it switches to an orange "reconnecting" state and quietly retries in the background for up to 12 minutes (exponential backoff, at most 8 seconds between attempts), picking transcription back up the moment the network returns. Only pressing ESC or the hotkey again actually ends the session; every other cause (a brief network drop, the server closing the connection, a failed ping) is handled by silent recovery. The instant reconnection succeeds, the old subtitle text and buffered audio are discarded — live captioning has no need to replay history, and this avoids showing text that's out of sync with what you're currently saying.

Subtitle mode is only enabled for Soniox and Apple Speech. Other engines either have cold-start latency or don't support persistent sessions, so the toggle grays out automatically when you switch to ElevenLabs, Volcengine, or Groq in settings — hover the ⓘ next to it for details. A long silence no longer triggers the internal "no token in 5 seconds" check, avoiding a storm of reconnects. Subtitle-mode text buffering is now capped at 150 characters (regular dictation stays at 20k), so it won't grow unbounded while left running.

A few other bits of polish: fixed a class of intermittent connection timeouts that could show up after extended use; the provider picker's visuals now match the menu bar (key icon for configured providers first, grayed-out crossed-out key for unconfigured ones after); overlay fade-out dropped from 0.5s to 0.25s; and the pre-connection idle timeout went from 2 minutes to 15 minutes, so text appears right away when you press the hotkey during continuous work.