From d094ecd49107fd0f07820dd91dd54324305fa3e9 Mon Sep 17 00:00:00 2001 From: jpolo1224 Date: Tue, 18 Aug 2026 13:29:42 -0400 Subject: [PATCH] Settings: put Emulate USB Keyboard in the Network tab It existed only in the in-game pause menu, which made the On-Screen Keyboard hotkey's own message a dead end: it tells you to turn this on in Network settings, and there was nothing in Network settings to turn on. Reported from Discord after exactly that. Same Settings.usbKeyboard field as the in-game row, so the two stay in sync, and indexed for settings search. --- .../app/src/main/java/com/armsx2/i18n/I18n.kt | 1 + .../src/main/java/com/armsx2/ui/settings/NetworkTab.kt | 10 ++++++++++ .../com/armsx2/ui/settingshub/SettingsSearchIndex.kt | 1 + 3 files changed, 12 insertions(+) diff --git a/android/armsx3-ui/app/src/main/java/com/armsx2/i18n/I18n.kt b/android/armsx3-ui/app/src/main/java/com/armsx2/i18n/I18n.kt index 3c5b506ff..948f63535 100644 --- a/android/armsx3-ui/app/src/main/java/com/armsx2/i18n/I18n.kt +++ b/android/armsx3-ui/app/src/main/java/com/armsx2/i18n/I18n.kt @@ -710,6 +710,7 @@ val EN: Map = mapOf( "memcard.status.coreStarting" to "Core settings are still starting up.", "network.address" to "Address", "network.emulateUsbKeyboard" to "Emulate USB Keyboard", + "net.usbKeyboard.description" to "Report a USB keyboard to the game. Needed by titles that require one \u2014 EverQuest Online Adventures, Konami-keyboard games \u2014 and for typing in online chat. A physical or Bluetooth keyboard works once this is on, and the \"On-Screen Keyboard (toggle)\" hotkey raises the Android keyboard over the game without pausing.", "network.ethernetDevice" to "Ethernet Device", "network.hddImage.dialogHint" to "File name (kept in the data folder) or a full path to an existing image.", "network.hddImage.fieldLabel" to "HDD image", diff --git a/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settings/NetworkTab.kt b/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settings/NetworkTab.kt index 0643786eb..45fc5b55d 100644 --- a/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settings/NetworkTab.kt +++ b/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settings/NetworkTab.kt @@ -76,6 +76,16 @@ fun NetworkTab(state: MutableState) { s.ps3.upnpEnabled, description = str("net.upnp.description"), ) { apply(s.copy(ps3 = s.ps3.copy(upnpEnabled = it))) } + SettingsDivider() + // Emulate USB Keyboard. Previously reachable ONLY from the in-game pause menu, which made + // the "On-Screen Keyboard (toggle)" hotkey's own message a dead end: it says to turn this + // on in Network settings, and there was nothing here to turn on. Same field, so the two + // rows stay in sync. + ToggleRow( + str("network.emulateUsbKeyboard"), + s.usbKeyboard, + description = str("net.usbKeyboard.description"), + ) { apply(s.copy(usbKeyboard = it)) } } } diff --git a/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settingshub/SettingsSearchIndex.kt b/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settingshub/SettingsSearchIndex.kt index c9ea5721d..4b70d6c8c 100644 --- a/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settingshub/SettingsSearchIndex.kt +++ b/android/armsx3-ui/app/src/main/java/com/armsx2/ui/settingshub/SettingsSearchIndex.kt @@ -146,6 +146,7 @@ internal val SETTINGS_SEARCH_INDEX: List = listOf( SettingsSearchEntry("net.internet.label", true, SettingsCategory.Network), SettingsSearchEntry("net.psn.label", true, SettingsCategory.Network), SettingsSearchEntry("net.upnp.label", true, SettingsCategory.Network), + SettingsSearchEntry("network.emulateUsbKeyboard", true, SettingsCategory.Network), SettingsSearchEntry("overlay.osdSize.label", true, SettingsCategory.OnScreen), SettingsSearchEntry("overlay.osdColor.label", true, SettingsCategory.OnScreen), SettingsSearchEntry("overlay.uiSize.label", true, SettingsCategory.OnScreen),