02aec4249f
Showing both a keyboard key and a gamepad button on every ability row (and WASD movement rows that never had a gamepad equivalent anyway) cluttered the list once a controller is in play. The rebind list now shows only the relevant set for whichever device the player is actually holding: on a gamepad, movement rows disappear entirely (the D-pad/stick isn't individually remapped, so there's nothing to show) and each ability shows only its gamepad button; on keyboard, the reverse. Uses the same Controls.using_gamepad() last-input heuristic as the HUD's ability keycaps, not mere connection presence, so a controller left plugged in but unused doesn't hide keyboard binds from a mouse-and-keyboard player. The list (and its hint text) also swaps live if the player switches device while the panel is open, skipped while a rebind capture is in progress so it can't be torn out from under them. Verified headlessly: keyboard mode shows all 8 rows, gamepad mode shows only the 4 ability rows, and the hint text swaps between them — confirmed with a real screenshot of both states. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MXBNaEBmrYDSMcv4NgUWtV