Epic: #113 · Milestone: MC7 — TV shell
Tasks
- Generic HID report parser (usage pages: Generic Desktop, Keyboard, Consumer Control — play/pause/vol/home/back/menu, Gamepad) shared by USB (#68) and BT (#71 BT half);
drivers/input/*files revived after #65. - Input event device with a unified event stream consumed by the focus engine; key repeat and long-press generated centrally.
- Gamepads: D-pad/left stick → navigation, A/B → Select/Back, triggers → seek.
- Pairing UI in Settings (BT scan, pair, forget) and a keymap editor for unknown remotes ("press the key for Select…").
Acceptance
USB keyboard + USB remote dongle drive the shell in QEMU (usb-kbd) and on the Pi; a BT remote pairs and works after the BT half lands.