PiTerminal didn't call term.focus() on mount, so xterm.js stayed passive — onData only fires when the DOM element has focus. Users saw the boot prompt but their keystrokes went to whatever element held focus when they clicked Run (canvas, code editor), never reaching the bridge. Calling focus() right after fit() makes the prompt receive input the moment it's visible. The qemu_manager change adds INFO-level logging when serial_input WebSocket messages reach send_serial_bytes — useful diagnostic for future Pi3 input problems (proves whether bytes reached the backend before we look at TTY / kernel / PL011 wiring). |
||
|---|---|---|
| .. | ||
| app | ||
| scripts | ||
| sdk | ||
| tests | ||
| .env.example | ||
| Dockerfile | ||
| debug_qemu.py | ||
| mcp_server.py | ||
| mcp_sse_server.py | ||
| requirements.txt | ||