mirror of
https://github.com/kuhyx/utils.git
synced 2026-11-10 19:07:17 +01:00
`sickdays gui` opens a Tk window modelled on the phone's Sick days screen: a Monday-first month calendar (cat-2 fill, a dot for kept lockers, past days faded and inert), a five-switch panel for the clicked day, and the "Marked sick" list with "Kept: ..." lines. A free day is refused with the phone's wording. Each write starts sync_quietly() on a non-daemon thread. The window class is "sickdays" and Escape closes it. sickdays.gui.KeepPanel is the panel on its own, a plain tk.Frame with no root, mainloop, grab or wm_* call, so screen-locker can embed it under its lock-screen grab. `import sickdays` and the rest of the CLI never import tkinter: the CLI loads the gui module by name only for `gui`, and a subprocess test checks this. The tests drive real Tk on a withdrawn root, and CI now runs them under xvfb-run, as gatelock's CI does. Adds a sickdays.desktop launcher, which install.sh installs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PAhbNszs5JKdtnD4uBi3xp |
||
|---|---|---|
| .. | ||
| crdt-sync-dart-tests.yml | ||
| crdt-sync-flutter-tests.yml | ||
| crdt-sync-precommit.yml | ||
| crdt-sync-tests.yml | ||
| dependency-freshness.yml | ||
| design-system-tests.yml | ||
| earned-time-precommit.yml | ||
| earned-time-tests.yml | ||
| file-length.yml | ||
| freedays-precommit.yml | ||
| freedays-tests.yml | ||
| gatelock-precommit.yml | ||
| gatelock-tests.yml | ||
| github-device-auth-tests.yml | ||
| md-naming.yml | ||
| music-theory-tests.yml | ||
| palette-drift.yml | ||
| repo-contract.yml | ||
| shared-gates-tests.yml | ||
| sickdays-precommit.yml | ||
| sickdays-tests.yml | ||
| sync-settings-ui-tests.yml | ||
| ts-config-tests.yml | ||
| ts-core-tests.yml | ||
| web-ui-tests.yml | ||