Skip to content

[Android] Support for multiple controllers and rumble - #81

Open
rfandango wants to merge 11 commits into
mainfrom
feat/multi-controller-slots
Open

rfandango wants to merge 11 commits into
mainfrom
feat/multi-controller-slots

Conversation

@rfandango

Copy link
Copy Markdown
Owner

No description provided.

@rfandango
rfandango force-pushed the feat/multi-controller-slots branch from 0c2409c to 5734113 Compare August 14, 2026 17:16
lxyongit pushed a commit to lxyongit/Xendroid-Plus that referenced this pull request Nov 4, 2026
…apping

The trigger axes (LTRIGGER/BRAKE, RTRIGGER/GAS) reached the guest as a
button past half way, on P1 and on P2-P4, and the core turned a pressed
trigger into 255: no throttle or brake control in racing games (phforner0#97,
phforner0#104). A trigger now sends its travel as the guest's 0-255 byte (dead
zone 0.02), and the core passes the value through; a digital press (the
touch controls, an L2/R2 key) is still full. Keystrokes see a trigger
pressed past XInput's threshold (> 0x1F, as Edge's SDL driver), and the
previous key state moves only on a transition, so a KEYDOWN isn't
flagged as a repeat. Holding LT for the gyro aim counts from that
threshold too. Following XenDroid's take on it (rfandango/XenDroid#81,
not merged there).

The axes follow the key mapping of L2 and R2, which a pad in analog mode
doesn't send as keys: on the guest's LT or RT they keep their travel, on
another button they press it past half way, and left unbound they drive
nothing. They send only changes and never release what they didn't
press, so a trigger at rest leaves alone LT held by a digital ZL key.
The key capture of the mapping screen, a dialog, takes a trigger pushed
past half in its own window as L2 or R2 (phforner0#97: the mapping didn't see the
trigger at all). A pad that sends a trigger both as an axis and as a key
past a point of its own has the key, and its release, ignored once the
axis has moved; the very first press can still get there before the
axis's first sample.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant