SteamVR's dashboard starts a floating window's move only for a press from
the head or a hand: UndockedOverlay.startFloatingWindowMove reads the
pressing device from the mouse event's CapsLock/NumLock bits and logs "mouse
event carried no input path" for anything else. So the 3D mouse as a
treadmill clicked and resized SteamVR's windows but couldn't move them, the
regression since 2026-10-09.
pointer/dashpatch wraps the grab bar's handler in the dashboard page: a
press with no device runs it as the right hand, with that pose answered by
/user/treadmill, and the move then follows /user/treadmill.
frametop-dashpatch.service puts it in over the dashboard's debugger, again
whenever SteamVR restarts. The installer turns the debugger on at
127.0.0.1:8089 (not 8087, which SteamOS forwards to the network on 8088);
the uninstaller turns it off if Frametop turned it on.
Headset test 2026-10-13: window moves with the treadmill role work.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>