gralculator/internal
Grok 0812bc162f sketch: tight-scope HEX entry via keyboard (A-F only while base=HEX)
- Engine:
  * EnterDigit now accepts A-F (uppercased) only for BaseHEX; decimal path now validates 0-9.
  * EnterDecimalPoint ignored for non-DEC.
  * currentNumericValue parses entry using current base (ParseInt base 16 for HEX, extended to BIN/OCT for robustness).
  * FormatForDisplay prefers returning the raw (upper) entry string when active *and* base indicator matches (so typing 1A in HEX shows '1A', not 26).
  * CycleBase now commits any active entry (parsed with old base) before switching. This makes mid-entry Tab safe and preserves CERR semantics.
- UI: added A-F/a-f key handling in Update (only when CurrentBase()==HEX). Sets pressedKey (harmless since no visual A-F buttons in tight scope).
- Tests: added 4 focused tests for hex digit acceptance, decimal ignore, mode gating, and mid-entry base switch + subsequent arithmetic.
- All existing behavior (DEC, CERR, etc.) preserved.
- Build + tests green.

This is the minimal 'keyboard only while indicator says HEX' scope requested. No visual A-F keypad buttons, no fractional hex, no changes to BIN/OCT entry.
2026-06-06 15:55:02 +01:00
..
calc sketch: tight-scope HEX entry via keyboard (A-F only while base=HEX) 2026-06-06 15:55:02 +01:00
ui sketch: tight-scope HEX entry via keyboard (A-F only while base=HEX) 2026-06-06 15:55:02 +01:00
version chore(skeleton): minimal Go project layout + build system 2026-06-06 14:28:59 +01:00