Skip to content

AFK-Automations/moonlight-voice

Repository files navigation

Moonlight Voice

Voice dictation fix for Moonlight Android — the original open-source GameStream client.

What This Fixes

Stock Moonlight drops all text from Android IME commitText() calls. This means voice dictation, swipe typing, and autocomplete through Gboard (or any soft keyboard) silently fail — the text never reaches the Windows host.

This fork adds a custom InputConnection that intercepts those IME events and routes them to the remote host via the existing NvConnection.sendUtf8Text() protocol path.

Input Method Stock Moonlight Moonlight Voice
Hardware keyboard Works Works
Gboard tap typing Works Works
Gboard voice dictation Broken Fixed
Gboard swipe typing Broken Fixed
Autocomplete suggestions Broken Fixed

Downloads

Changes from Upstream

Only 3 files changed (117 lines added):

  1. StreamInputConnection.java (new) — Custom BaseInputConnection that routes commitText()NvConnection.sendUtf8Text()
  2. StreamView.java — Override onCreateInputConnection() to return StreamInputConnection
  3. Game.java — Pass NvConnection reference to StreamView

Application ID changed to com.mncompute.artemis so it installs alongside stock Moonlight.

Related

Building

git clone --recurse-submodules https://github.com/AFK-Automations/moonlight-voice.git
cd moonlight-voice
# Create local.properties with sdk.dir and ndk.dir paths
./gradlew assembleNonRootDebug

Credits

License

GPL-3.0-or-later (same as upstream)

About

Voice dictation fix for Moonlight Android (moonlight-stream/moonlight-android fork). Fixes Gboard voice, swipe typing, and autocomplete.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages