feat: harden Flow cold-start/force-quit and polish macOS dictation UX
Fix cold-start overlay recursion that overflowed the main-thread stack when recording began while the ready overlay was still up; also remove temporary on-screen Flow DEBUG panels after the orange-mic investigation, and land the macOS overlay/catalog/layout polish plus related Flow recovery hardening.
This commit is contained in:
@@ -101,18 +101,25 @@
|
||||
"keyboard.translation.a11yHint" = "Toggle translation or change the target language.";
|
||||
|
||||
/* macOS app */
|
||||
"mac.section.dashboard" = "Dashboard";
|
||||
"mac.section.dashboard" = "Home";
|
||||
"mac.section.history" = "History";
|
||||
"mac.section.dictionary" = "Personal Dictionary";
|
||||
"mac.section.dictionary" = "Dictionary";
|
||||
"mac.section.settings" = "Settings";
|
||||
"mac.brand.subtitle" = "AI DICTATION";
|
||||
"mac.brand.tagline" = "Speak it. It’s typed.";
|
||||
"mac.brand.tagline.subtitle" = "Local-first · Cross-device · One-tap dictation";
|
||||
"mac.devices" = "Devices";
|
||||
"mac.status.ready" = "Ready to dictate…";
|
||||
"mac.page.history.subtitle" = "Every dictation, kept in order.";
|
||||
"mac.page.dictionary.subtitle" = "Words that teach recognition your voice.";
|
||||
"mac.page.settings.subtitle" = "Engine, shortcuts, and appearance.";
|
||||
"mac.status.ready" = "Ready when you are…";
|
||||
"mac.status.listening" = "Listening…";
|
||||
"mac.status.transcribing" = "Transcribing…";
|
||||
"mac.status.polishing" = "Polishing…";
|
||||
"mac.status.copied" = "Copied to clipboard";
|
||||
"mac.status.pasted" = "Inserted into front app";
|
||||
"mac.status.copiedAndPasted" = "Copied and inserted";
|
||||
"mac.status.deliveryWithNote" = "%@ — %@";
|
||||
"mac.stat.dictationTime" = "Dictation Time";
|
||||
"mac.stat.words" = "Dictation Chars";
|
||||
"mac.stat.translation" = "Translation Chars";
|
||||
@@ -123,6 +130,12 @@
|
||||
"mac.stat.customTerms" = "Custom terms";
|
||||
"mac.status.chipReady" = "Ready";
|
||||
"mac.status.chipProcessing" = "Processing";
|
||||
"mac.overlay.listening" = "Listening";
|
||||
"mac.overlay.preparing" = "Starting…";
|
||||
"mac.overlay.transcribing" = "Transcribing";
|
||||
"mac.overlay.polishing" = "Polishing";
|
||||
"mac.overlay.live" = "Live";
|
||||
"mac.overlay.done" = "Done";
|
||||
"mac.record.start" = "Record";
|
||||
"mac.record.stop" = "Stop";
|
||||
"mac.record.pressStop" = "Press Stop";
|
||||
@@ -133,8 +146,8 @@
|
||||
"mac.mode.local" = "Local Mode";
|
||||
"mac.connected" = "Connected";
|
||||
"mac.offline" = "Offline";
|
||||
"mac.history.recent" = "Recent";
|
||||
"mac.history.empty" = "No voice transcripts yet.";
|
||||
"mac.history.empty" = "No dictations yet";
|
||||
"mac.history.emptyBody" = "Hold Option anywhere to speak — transcripts land here.";
|
||||
"mac.history.select" = "Select a dictation";
|
||||
"mac.history.clearTitle" = "Clear all history?";
|
||||
"mac.history.clearMessage" = "This cannot be undone.";
|
||||
@@ -151,6 +164,12 @@
|
||||
"mac.dict.deleteMessage" = "This cannot be undone.";
|
||||
"mac.hint.holdOption" = "Hold Option to dictate";
|
||||
"mac.settings.cloudProvider" = "CLOUD PROVIDER";
|
||||
"mac.settings.polishProvider" = "TEXT POLISH (LLM)";
|
||||
"mac.settings.asrProvider" = "SPEECH RECOGNITION (ASR)";
|
||||
"mac.settings.asrService" = "ASR service";
|
||||
"mac.settings.asrApiKey" = "ASR API key";
|
||||
"mac.settings.asrModel" = "ASR model";
|
||||
"mac.settings.baseURL" = "Base URL";
|
||||
"mac.settings.service" = "Service";
|
||||
"mac.settings.apiKey" = "API Key";
|
||||
"mac.settings.model" = "Model";
|
||||
@@ -174,6 +193,15 @@
|
||||
"mac.settings.autoPasteDesc" = "Simulate ⌘V in the front app after transcription (requires Accessibility).";
|
||||
"mac.settings.hotkey" = "Global shortcut";
|
||||
"mac.settings.hotkeyDesc" = "Hold Option (⌥) to dictate from any app.";
|
||||
"mac.settings.hotkeyTrigger" = "Shortcut key";
|
||||
"mac.settings.hotkeyTriggerDesc" = "Which Option (⌥) key starts dictation when held.";
|
||||
"mac.hotkeyTrigger.rightOption" = "Right Option (⌥)";
|
||||
"mac.hotkeyTrigger.leftOption" = "Left Option (⌥)";
|
||||
"mac.hotkeyTrigger.eitherOption" = "Either Option key";
|
||||
"mac.hint.hold.rightOption" = "Hold right Option (⌥) to dictate";
|
||||
"mac.hint.hold.leftOption" = "Hold left Option (⌥) to dictate";
|
||||
"mac.hint.hold.eitherOption" = "Hold either Option (⌥) to dictate";
|
||||
"mac.hint.holdOption" = "Hold Option to dictate";
|
||||
"mac.settings.qwen3Model" = "Qwen3 model folder";
|
||||
"mac.settings.qwen3ModelDesc" = "Folder with config.json, model.safetensors, vocab.json, and merges.txt.";
|
||||
"mac.settings.qwen3Browse" = "Choose folder…";
|
||||
@@ -241,6 +269,9 @@
|
||||
"mac.localASR.installed" = "Installed";
|
||||
"mac.localASR.notInstalled" = "Not installed";
|
||||
"mac.localASR.personalDictionaryTag" = "Personal dictionary";
|
||||
"mac.localASR.badge.fastest" = "Fastest";
|
||||
"mac.localASR.badge.balanced" = "Most balanced";
|
||||
"mac.localASR.badge.quality" = "Best quality";
|
||||
"mac.localASR.hotwordsYes" = "Hotwords";
|
||||
"mac.localASR.hotwordsNo" = "No hotwords";
|
||||
"mac.localASR.catalogMissing" = "Local ASR catalog is missing from the app bundle.";
|
||||
|
||||
Reference in New Issue
Block a user