fix(input): move input-method control to Settings per RFC 0010 IA - #10
Merged
Conversation
The joystick PR (#9) added a toolbar cycle button — but no other frontend puts input-method switching in the toolbar, and RFC 0010's settings IA specifies the steering-method control lives in Settings (Apple's Access settings, Windows' SettingsPanel). This realigns Android: - InputMethodRow at the top of Settings → Input: dropdown of the modes the hardware supports (touch always; tilt with a rotation sensor; joystick with a connected gamepad), with descriptive labels. - Toolbar button removed (also drops the now-unused Crosshair/Smartphone imports and toolbar strings). - toggleInputMode → applyInputMode(mode) driven by the picker. - Input-mode choice is now persisted (SharedPreferences) and restored on engine init, with a hardware-availability fallback to touch — the mode previously reset to touch on every activity recreation (rotation, BACK-finish), which testing exposed. Follows-up #9; refs issue #6 stage 2 notes. Verified: - e2e on API 35 emulator + uinput virtual gamepad: picker offers all three modes with the pad connected; selecting Joystick steers (wrote 'Koward in' from a held deflection) and centring freezes output at 0.0 cps; force-stop → relaunch restores Joystick and writes; pad absent → picker omits joystick, restore falls back to touch. - assembleDebug + assembleRelease + testDebugUnitTest (25/25) + connectedDebugAndroidTest (4/4) green. Signed-off-by: will wade <willwade@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #9. The joystick PR shipped a toolbar cycle button for input methods — reviewer (rightly) flagged that no other frontend puts this in the toolbar and RFC 0010's settings IA places the steering-method control in Settings (Apple: Access settings; Windows:
SettingsPanel). This realigns.Changes
toggleInputMode→applyInputMode(mode)driven by the pickerVerification done (API 35 emulator + uinput virtual gamepad)
assembleDebug+assembleRelease+testDebugUnitTest(25/25) +connectedDebugAndroidTest(4/4) greenNote: the sweep-mode flakiness seen mid-test was the emulator dispatcher's sub-threshold delta filtering (event-amplitude dependent), not app code — held deflections are deterministic.
Refs #6 (stage 2 will surface
SP_JOYSTICK_*axis params in this same Input tab).DCO: commit is
Signed-off-by.