How iOS 16 Dictation Keeps the Keyboard Open

Apple’s iOS 16 introduced a redesigned Dictation experience that allows users to fluidly alternate between voice and touch input without dismissing the onscreen keyboard. This feature is powered by advanced on-device processing via the Apple Neural Engine, a unified multimodal input pipeline, and asynchronous text insertion. Together, these technologies keep the touch keyboard responsive and visible while simultaneously processing spoken language.

On-Device Processing via the Neural Engine

Previous versions of iOS often relied on server-side processing or separate modal interfaces for speech-to-text, which required pausing or obscuring standard touch inputs. In iOS 16, dictation models run entirely on-device using the Apple Neural Engine (supported on devices with an A12 Bionic chip or later). Because the automatic speech recognition (ASR) model runs locally with near-zero latency, the operating system no longer needs to wait for external network responses or enter a blocking dictation mode.

Unified Multimodal Input Architecture

Instead of treating dictation as an isolated event that replaces the keyboard interface, iOS 16 unifies touch and voice into a single input responder. The primary text field (UITextInput) retains its first-responder status throughout the entire interaction. The operating system treats spoken audio not as a separate interface takeover, but as an alternative stream of character input alongside touch events. Because the standard keyboard view hierarchy is never torn down or hidden, it stays active and ready to register key taps, swipes, and shortcuts.

Dynamic Cursor and Selection Tracking

Because the keyboard stays present, users can move the cursor, select text, or type words while continuing to speak. The system handles this through real-time cursor tracking. The speech engine continuously transcribes audio in an asynchronous background thread and directs transcribed tokens to the active insertion point. If a user taps elsewhere in the text box or selects a word using touch, the system instantly updates the text insertion target without interrupting the microphone feed or speech recognition pipeline.

Asynchronous Streaming and Keystroke Emulation

The microphone captures speech into continuous audio buffers, which the neural network parses into text in parallel with the main user interface thread. As words and automatic punctuation are generated, the system feeds them into the active text field similarly to programmatic keystrokes. By decoupling audio capture and language processing from the main UI thread, the keyboard remains fully interactive at 60 or 120 frames per second, allowing immediate responses to touch while transcription continues uninterrupted.