Commit graph

6 commits

Author SHA1 Message Date
45f63962f4 Update README for v0.0.2 (touch-bar navigation)
Rewrites the README to match the navigation redesign in the last
commit:

- Status section reflects the touch-bar/scroll-section layout,
  replacing the outdated tab-based description
- New Design Notes explain *why* navigation changed — untested
  touch-swipe fidelity on this hardware, and accessibility reasoning
  for the intended client base (small factories; many users may not
  have a full set of fingers/thumbs on either hand). Resistive touch
  and oversized, forgiving touch zones are framed as a deliberate
  choice, not a workaround, so the reasoning doesn't have to be
  reconstructed from memory later.
- Known Issues trimmed to what's actually still open — the fixed items
  from the v0.0.1 review (unused import, dead sparkline, missing
  threshold colouring, stale class name) are removed; the Screen vs.
  Container note is reframed as intentional design, not a leftover
- Roadmap updated with the touch-controller HID check
  (lsusb/dmesg/evtest) flagged during hardware research — some earlier
  Waveshare display revisions need a non-standard driver
2026-07-21 04:10:27 +02:00
4f8c4fa4b0 Replace tabbed layout with touch-bar + scroll-section navigation (v0.0.2)
Navigation redesign, driven by testing against the actual target
hardware (Waveshare 5" resistive touchscreen) and the intended client
base (small factories — many users will not have a full set of
fingers/thumbs on either hand):

- Replace TabbedContent/TabPane with a VerticalScroll containing three
  min-height:100vh sections (Dashboard, Request Assistance, Switch to
  X), navigated via a fixed-width touch-bar sidebar rather than raw
  swipe, since touch-swipe fidelity on this hardware was never verified
  and button-triggered navigation removes the dependency entirely.
- Touch-bar zones are deliberately oversized (roughly thumb-width,
  half-screen-height) with a forgiving click margin that extends past
  the visible coloured bar — a touch landing near, but not precisely
  on, the visible target still registers. Verified in testing that
  this margin works correctly in the fully assembled app, not just in
  isolation.
- Drop Screen subclassing for Dashboard/Request Assistance/Switch to X;
  they're now plain Containers composed directly into the scroll stack.
  Screen is reserved for BlankScreen, which is the only one that
  actually uses the app's real push/pop screen stack.
- Navigation index is tracked explicitly rather than inferred from
  scroll pixel offset — the offset-inference approach proved fragile
  in testing.

Fixes from the v0.0.1 review:
- Remove unused `time` import (flake8 F401)
- Rename app class away from the BigBoy-specific name
- Apply UTIL_THRESHOLDS consistently to the GPU util bar, per-core CPU
  bars, and memory bar (previously only the GPU temp digits were
  colour-coded)
- Wire up the GPU-util sparkline (previously tracked but dead/unused)

Still a prototype: no test gates or cleanup trap yet (not CE OS
scripting style guide-compliant), and Request Assistance / Switch to X
remain stubs pending the outbound-email and VT-switch wrapper work.
2026-07-21 04:06:55 +02:00
c200075b83 Update README.md 2026-07-21 02:11:49 +02:00
0724aa4376 Correct file name in header 2026-07-21 02:11:12 +02:00
05aaec19a9 Add server_dash.py 2026-07-21 02:07:37 +02:00
afac54c7bb Initial commit 2026-07-21 02:04:48 +02:00