From 753903cc16294b6f567926c090e715f3bef70ed7 Mon Sep 17 00:00:00 2001 From: ciregenz Date: Wed, 5 Aug 2026 22:57:20 -0700 Subject: [PATCH] [eric] voice: ambient typing no longer suppresses the legacy chord under an fn primary --- electron/voiceHotkey.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/electron/voiceHotkey.js b/electron/voiceHotkey.js index d810e5d9..a642bd0c 100644 --- a/electron/voiceHotkey.js +++ b/electron/voiceHotkey.js @@ -106,10 +106,12 @@ function installVoiceHotkey(getMainWindow) { registeredAccel = null; }; - // Fallback toggle, deferred so a live tap's hold-down wins the same press. + // Fallback toggle, deferred so a live tap's hold-down wins the same press. The freshness guard + // only applies when the tap can SERVE the primary: under an fn primary the tap sees every key yet + // handles none, and ambient typing was suppressing the legacy chord entirely (caught live). const sendFallbackToggle = () => { setTimeout(() => { - if (Date.now() - lastTapKeyMs < TAP_FRESH_MS) return; + if (combo.special !== 'fn' && Date.now() - lastTapKeyMs < TAP_FRESH_MS) return; send('voice:toggle'); }, FALLBACK_DEFER_MS); };