From ced92a0eb1e0ca3e45ffd09133cd53a1ffa27b90 Mon Sep 17 00:00:00 2001 From: Yuval Adam <_@yuv.al> Date: Fri, 24 Jul 2026 16:13:38 +0200 Subject: Make IBus activation resilient --- SPEC.md | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'SPEC.md') diff --git a/SPEC.md b/SPEC.md index 2252541..6bf3000 100644 --- a/SPEC.md +++ b/SPEC.md @@ -249,12 +249,7 @@ Benefits: - fewer focus races than clipboard plus a synthetic paste shortcut; - no remote-control permission prompt. -The critical assumption is that the engine must be active for the focused input context. Phase 3 must test both activation models: - -1. **Persistent passthrough engine:** Parley's engine remains selected and returns `False` for ordinary key events so normal typing and shortcuts continue to applications. -2. **Temporary activation:** save the current engine, switch to Parley, commit text, and restore the previous engine. - -The persistent mode is preferred only if it does not interfere with typing, shortcuts, compose behavior, keyboard layouts, or other input methods. Temporary activation is acceptable only if switching and focus are reliable. If neither is robust, IBus will not be the default. +The engine must be active for the focused input context. Parley therefore uses temporary activation for each dictation session: it remembers the current engine, selects Parley while recording and transcribing, commits semantic text, and restores the previous engine after insertion, cancellation, or failure. If GNOME changes input sources during the session, Parley records the latest choice, reacquires its engine, and restores that choice afterward. The committed transcript is Unicode text and does not depend on the active keyboard layout. ### 7.2 Safe fallback: clipboard only -- cgit v1.3.1