Skip to content

fix: recorder widget doesn't hide when not in use (#100) - #106

Merged
karansinghgit merged 2 commits into
mainfrom
fix/recorder-hide-when-idle
Jul 10, 2026
Merged

fix: recorder widget doesn't hide when not in use (#100)#106
karansinghgit merged 2 commits into
mainfrom
fix/recorder-hide-when-idle

Conversation

@karansinghgit

Copy link
Copy Markdown
Owner

Fixes #100.

Cause

The recorder redesign turned the pill into an always-present widget: showIdleRecorder() shows it at launch and returnToIdle() deliberately keeps it on screen. So it never disappears in either recording mode — as multiple users reported.

Fix

Restore hide-when-idle as the default, and gate the always-visible behavior behind a new opt-in setting.

  • Settings → General → "Always show recorder pill" (default off):
    • Off: the recorder appears only while dictating and hides when idle.
    • On: the previous always-present pill.
  • returnToIdle() now orderOut()s the panel when the toggle is off (runs after commit and after cancel / no-speech). Recording still shows the HUD via startRecording().
  • showIdleRecorder() only fronts the pill at launch when the toggle is on.
  • Flipping the setting posts .recorderIdleVisibilityChanged; AppDelegate observes it and calls applyIdleVisibilityPreference() to show/hide immediately (guards against hiding mid-session via the panel's interactive state).

Notes

Test plan

  • Default: pill absent on launch → appears on record → hides after paste. Works in both Hold and Toggle modes.
  • Turn the setting on → pill stays resting on screen; off → hides again immediately.

The recorder redesign made the pill always-present: showIdleRecorder() showed
it at launch and returnToIdle() deliberately kept it on screen, so it never
went away in either recording mode.

Restore hide-when-idle as the default and gate always-visible behind a new
"Always show recorder pill" setting (default off):
- returnToIdle() now orderOut()s the panel when the toggle is off (hit after
  commit and after cancel/no-speech). Recording still shows the HUD normally.
- showIdleRecorder() only fronts the pill at launch when the toggle is on.
- Toggling the setting posts .recorderIdleVisibilityChanged; AppDelegate
  observes it and calls applyIdleVisibilityPreference() to show/hide live
  (guards against hiding mid-session via the panel's interactive state).

Fixes #100.
@karansinghgit
karansinghgit merged commit 450c660 into main Jul 10, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: recorder widget doesn’t hide when not in use

1 participant