mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-07-28 07:48:13 +00:00
Compact mode (Settings > Keyboard's "Ext. KB" row) is meant to guarantee operation with no joystick at all, but it was still half-tied to the on-screen grid it hides: - arrows now move the text cursor directly instead of a grid selection nobody can see, and Tab opens the placeholder picker directly instead of the row/col-dependent Hold-Enter dispatch - plain Enter submits the field (there's no grid cell to have deliberately landed on), same as Fn+Enter - Fn+letter's accent popup no longer gates on the grid's script/T9 settings -- CardKB always types plain Latin regardless of them, so the gate only made the gesture silently stop working - the whole status line is gone: nothing it showed (script, T9-vs-ABC, caps) is actionable from an external keyboard. The freed height goes to message-preview lines, floored at the smallest grid's footprint so cursor mode's own hint block still fits - the accent popup gets a fixed slot instead of anchoring on a `row` that is never deliberately navigated to in this mode Also fixes a text-corrupting invariant break: moveCursorDirect() and openPlaceholders() move the cursor without finalizing a pending T9 multi-tap cycle, so a later tap on the same cell within the timeout overwrote an unrelated character. Every other cursor-moving path already cleared it. Fn+Tab is dropped as a separate shortcut -- plain Tab already covered every case it did. Fn+Enter no longer reads as a dead key in cursor mode. Direct typing moves into insertTyped(), one translation point documenting what a future relabelled-keycap layout (Cyrillic/Greek) would need. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>