atlus/frontend
roberts a5a7b01fd9 Complete rewrite of input forwarding — fix mouse and keyboard events
Root causes fixed:
- _focused was a stray class annotation in @dataclass, causing field
  ordering issues — moved to proper dataclass field
- xdotool type --window WID not supported on all versions — removed
  --window flag, use focused window instead
- xdotool commands with --window may fail silently — switched to
  absolute coordinates (window is at 0,0 filling the display)
- All xdotool errors were silently swallowed — now logged with stderr

Mouse events:
- Use absolute mousemove + click (no --window) since window fills display
- Separate mousemove and click into two calls for reliability
- Fire-and-forget for mousemove to reduce latency

Keyboard events:
- xdotool type (no --window) for printable characters
- xdotool key (no --window) for special keys and modifier combos
- Window focused once via _ensure_focus, not per-event

Diagnostics:
- Backend logs first 5 input events received per WebSocket session
- Backend logs xdotool stderr on failure
- Frontend logs first 10 input events sent + WS state warnings
- Frontend uses capture phase for keyboard events

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 01:22:59 -05:00
..
assets Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00
css Maximize GUI app window and fix input forwarding 2026-03-15 01:09:58 -05:00
js Complete rewrite of input forwarding — fix mouse and keyboard events 2026-03-15 01:22:59 -05:00
desktop.html Replace panel services with docked apps, add autostart and update scanner settings 2026-03-14 23:40:44 -05:00
index.html Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00