Skip to content

feat(overlay): text diff animation, auto-dismiss, and settings fixes#76

Merged
missuo merged 5 commits into
missuo:mainfrom
foru17:feat/overlay-polish-v2
Apr 11, 2026
Merged

feat(overlay): text diff animation, auto-dismiss, and settings fixes#76
missuo merged 5 commits into
missuo:mainfrom
foru17:feat/overlay-polish-v2

Conversation

@foru17

@foru17 foru17 commented Apr 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Rebased on latest main (includes LLM invert modifier, multi-profile, contributor avatars). Supersedes #75.

  • Inline diff animation: Character-level diff between ASR and LLM-corrected text — deleted chars fade out in soft red, insertions highlight in blue-lavender, adjacent delete+insert pairs merge into clean replacements. Falls back to crossfade beyond 500 chars to avoid main-thread stalls.
  • Auto-dismiss on any key press: After text is pasted, pressing any key (except template shortcuts 1-9) immediately dismisses the overlay so users can keep typing.
  • Overlay click-through: Main pill panel stays ignoresMouseEvents=YES during linger/dismiss — no longer blocks clicks on the app underneath.
  • Template path preservation: Editing a file-backed template (system_prompt_path) now writes changes back to the file instead of silently converting to inline.
  • Settings polish: Test result shown inline next to Test button (not hidden behind fields), Save no longer closes the window, ASR test messages in English, preview text updated.

Test plan

  • Voice input → verify diff animation shows red/blue highlights, then fades to final text
  • After paste, press any key → overlay should dismiss immediately
  • After paste, press 1-9 → template rewrite should trigger (not dismiss)
  • Click on app behind overlay during linger → click should pass through
  • ASR settings → click Test → result shows in English next to the button
  • Settings → click Save → window stays open
  • Edit a file-backed template prompt → save → verify the .txt file is updated (not converted to inline)
  • Long text (>500 chars) → should crossfade instead of diff animation

🤖 Generated with Claude Code

foru17 and others added 5 commits April 11, 2026 21:56
…ition

After text is pasted into the target app, pressing any key (except 1-9
template shortcuts) now immediately dismisses the overlay instead of
waiting for the linger timer. Also adds a 0.25s crossfade animation
when display text changes (ASR → LLM corrected text).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add character-level diff animation showing what changed between ASR and
LLM-corrected text: deleted chars fade out in soft red, inserted chars
highlight in blue-lavender, adjacent delete+insert pairs merge into
clean replacements. Animation plays over 0.8s then crossfades to final.

Also fix two settings bugs:
- Test result label now appears inline next to the Test button instead
  of being hidden behind configuration fields
- Save no longer closes the settings window, letting users continue
  editing other tabs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1. Diff animation: add 500-char threshold, beyond which falls back to
   simple crossfade. Fix O(n²) backtracking by appending forward then
   reversing once instead of insertObject:atIndex:0.

2. Overlay click-through: main pill panel stays ignoresMouseEvents=YES
   during linger and diff animation. Only the template button bar
   (separate panel) accepts mouse events. Prevents blocking clicks on
   the app underneath.

3. Template system_prompt_path: when a template references an external
   file and the user edits its content, write changes back to the file
   instead of silently converting to an inline prompt. Preserves the
   file-backed relationship.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace all Chinese test result messages with English to match the
overall English UI. Update overlay preview sample text to a more
natural conversational example.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@missuo missuo merged commit 8f7592d into missuo:main Apr 11, 2026
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.

2 participants