Repository navigation
feat(keyboard): an Xbox-style controller keyboard - #104
Merged
Merged
Conversation
Merged
4 tasks done
lippdev
force-pushed
the
feat/pad-pointer
branch
from
October 27, 2026 17:03
bb10edb to
8337a99
Compare
The on-screen keyboard was a header of instructions, a row of URL pieces and big MAIÚSC / á ç / ABC buttons. It is now one quiet grid after Xbox's: digits on top, delete at the end of their row, shift and enter at the sides of the letters, a wide space bar between / and .com, and a close key. The selected key turns white. The controller's buttons are the shortcuts, each shown as a glyph in the corner of its key in the connected controller's own labels: X deletes, Y is the space, the left trigger shifts, the menu button confirms, the left stick's click cycles the layer (letters, symbols with www. and .br, accents) and B closes. While the keyboard is open those buttons only type: X used to reload the page and RB, LT and RT changed page or tab in the middle of a word. The first D-pad press lands on "q". The instructions are the dialog's description, read by screen readers and no longer drawn. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
lippdev
force-pushed
the
feat/xbox-keyboard
branch
from
October 27, 2026 17:10
f6da7d2 to
724fedd
Compare
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.
Stacked on #103 (pointer) ← #101 (controller navigation).
Summary
The controller keyboard now follows the Xbox model.
Layout: one twelve-column grid, with nothing on screen but keys.
&123 → áç → abcin the top-left corner./and.com.The selected key turns white, which is easy to find from the sofa.
Layers:
/and.combeside the space bar.www.and.brbeside the space bar.Controller shortcuts, each drawn as a glyph in the corner of its key in the connected controller's own labels (
ControllerGlyphsgainsshift,menuandlayer):While the keyboard is open these buttons only type. Before this, X reloaded the page, RB went forward, and LT/RT switched tabs in the middle of a word.
Removed from the UI: the instruction header, the
.com .br www. https://row, and the MAIÚSC / á ç / ABC buttons. The ABC alphabetical layout is dropped. The instructions are now the dialog'saria-describedby, read by screen readers and no longer drawn.Focus: the first D-pad press lands on "q", as on Xbox. The Orca test now reaches "q" with the D-pad instead of two Tab presses; that test runs only on CI Linux and was not run locally.
Test plan
npm run typechecknpm test(118 passed)npm run test:e2e(59 passed, 3 skipped), including:sala.combecause the bar addshttps://🤖 Generated with Claude Code