Settings dialog beside Help: text size (Standard, Large, Largest: 100/125/150 %), applied to every font size through --text-scale. The dialogue box scrolls instead of growing past the game screen.
Keyboard controls: one key per button, changed with Change then a key press; Escape cancels; Tab, Escape and Space stay reserved. A reused key leaves its old button, which is reported. Reset controls restores the defaults.
Preferences live in this browser's localStorage (crystal-preferences-v1), validated on load, outside saves and backups.
The game screen's label, the Play message and Help's control list name the current keys. Help's outdated text was rewritten.
Unit tests for the preferences and browser tests for rebinding, cancelling, text size, reload and Help.
Left
Screen reader announcements for every native screen
Touch control remapping
First increment pushed in f289615.
**Done**
- Settings dialog beside Help: text size (Standard, Large, Largest: 100/125/150 %), applied to every font size through `--text-scale`. The dialogue box scrolls instead of growing past the game screen.
- Keyboard controls: one key per button, changed with Change then a key press; Escape cancels; Tab, Escape and Space stay reserved. A reused key leaves its old button, which is reported. Reset controls restores the defaults.
- Preferences live in this browser's `localStorage` (`crystal-preferences-v1`), validated on load, outside saves and backups.
- The game screen's label, the Play message and Help's control list name the current keys. Help's outdated text was rewritten.
- Unit tests for the preferences and browser tests for rebinding, cancelling, text size, reload and Help.
**Left**
- Screen reader announcements for every native screen
- Touch control remapping
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Plan: docs/PLAN.md section 4
Commit:
f289615First increment pushed in
f289615.Done
--text-scale. The dialogue box scrolls instead of growing past the game screen.localStorage(crystal-preferences-v1), validated on load, outside saves and backups.Left