fix(ui): scale trail-map markers for e-ink, add wrap-around nav

Trail map dots/diamonds/cross/start markers and the north indicator were
drawn as raw unscaled pixels, so they shrank to near-invisible specks on
landscape e-ink's larger font scale; they now route through the mini-icon
framework (icons.h) like the rest of the UI, and the grid intersection dots
scale with it too. The keyboard's preview/grid separator had the same bug
(hardcoded 1px) and now uses display.sepH().

Also makes UP/DOWN (and the keyboard's LEFT/RIGHT/UP/DOWN) wrap top<->bottom
across every list, menu and form selector, matching the behavior PopupMenu
already had.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Jakub
2026-06-18 09:16:57 +02:00
co-authored by Claude Sonnet 4.6
parent 2136e959d4
commit 92643d1721
10 changed files with 141 additions and 73 deletions
+2 -2
View File
@@ -146,8 +146,8 @@ public:
return true;
}
// drawList() reclamps _scroll from _sel every render.
if (up && _sel > 0) { _sel--; return true; }
if (down && _sel < ITEM_COUNT - 1) { _sel++; return true; }
if (up) { _sel = (_sel > 0) ? _sel - 1 : ITEM_COUNT - 1; return true; }
if (down) { _sel = (_sel < ITEM_COUNT - 1) ? _sel + 1 : 0; return true; }
if (_sel == 0 && (enter || left || right)) {
_prefs->bot_enabled ^= 1;