mirror of
https://github.com/kuhyx/diet-guard.git
synced 2026-11-11 13:27:39 +01:00
gatelock 0.4.0 (pinned here) stops the viewport following the app's own focus_set(): on 2026-08-03 that moved the screen locker's lock screen to mid-content and back with nobody touching the keyboard, and this gate uses the same viewport. Scrolling now happens only on the user's own keypress, wheel or click. That makes fitting the screen the gate's own responsibility rather than something a scrollbar covers for, and with a day of meals logged this one did not: 770px of content in a 739px pane. Trimmed the vertical rhythm (the title is one step down the scale, and the gaps around the description, suggestions, macros and footer are one step tighter) for 718px, with room for the dashboard to keep growing. Its layout test now requires the gate to *fit* rather than merely be reachable by scrolling, empty and populated. Dropped the 1024x600 tier: no machine runs it, this gate cannot reach it without dropping content, and a target nobody uses is a constraint that only ever costs. The probe presses Tab before moving focus, because a bare focus_set() no longer scrolls -- it would have been testing a path no user can take. The Tk fakes learned pack_forget(), which the viewport calls to take the scrollbar down whenever the content fits. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BsXnTHyuuCUZsqetTaajcF |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| _gate_keyboard_probe.py | ||
| _gate_layout_probe.py | ||
| _tk_fakes.py | ||
| conftest.py | ||
| test_budget_history.py | ||
| test_budget.py | ||
| test_calendar_view.py | ||
| test_cli_gate.py | ||
| test_cli_sync.py | ||
| test_cli.py | ||
| test_daystatus.py | ||
| test_estimator.py | ||
| test_foodbank_manual.py | ||
| test_foodbank.py | ||
| test_fuzzy.py | ||
| test_gate_layout_fits.py | ||
| test_gate.py | ||
| test_gatelock_calendar.py | ||
| test_gatelock_fanout.py | ||
| test_gatelock_keyboard.py | ||
| test_gatelock_mealflow.py | ||
| test_gatelock.py | ||
| test_main.py | ||
| test_mcp.py | ||
| test_portions.py | ||
| test_resolve.py | ||
| test_slots.py | ||
| test_state.py | ||
| test_sync_banks.py | ||
| test_sync_merge_banks.py | ||
| test_sync_merge.py | ||
| test_sync.py | ||
| test_test_guard.py | ||