Hi

This series cleans up the QEMU input subsystem by converting the last
legacy mouse API consumers and reworking how keyboard LED state (Caps
Lock, Num Lock, Scroll Lock) flows from emulated devices to UI backends.

The first patches are preparatory cleanups and fixes. Then legacy mouse
API consummers are converted. The second half introduces per-handler LED
state tracking in QemuInputHandlerState, convert the users, and drop the
old broadcast queue in the final patch.

Signed-off-by: Marc-André Lureau <[email protected]>
---
Changes in v2:
- warn on qemu_input_handler_register() unused result, suggested by
  Philippe Mathieu-Daudé
- related extra fixes
- rebased, collect patch trailers
- Link to v1: 
https://lore.kernel.org/qemu-devel/[email protected]

To: [email protected]
Cc: Philippe Mathieu-Daudé <[email protected]>
Cc: "Dr. David Alan Gilbert" <[email protected]>
Cc: Marc-André Lureau <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Cc: Richard Henderson <[email protected]>
Cc: "Michael S. Tsirkin" <[email protected]>
Cc: Gerd Hoffmann <[email protected]>
Cc: Jan Kiszka <[email protected]>
Cc: Peter Maydell <[email protected]>
Cc: [email protected]
Cc: Mark Cave-Ayland <[email protected]>
Cc: [email protected]
Cc: Thomas Huth <[email protected]>

---
Marc-André Lureau (22):
      hmp-commands.hx: fix button_state doc
      ui/hmp: move index_from_key() where it is used
      hw/i386/vmmouse: convert to QemuInputHandler API
      hw/usb/dev-wacom: convert to modern QemuInputHandler API
      ui: move LED and key utilities to input.c, delete input-legacy.c
      hw/input: replace fprint with LOG_GUEST_ERROR
      ui/input: remove double-notification on qemu_mouse_set()
      ui/input: remove dead declaration
      ui/input: add LED state tracking to QemuInputHandlerState
      hw/input/ps2: keep QemuInputHandlerState in PS2State
      hw/arm: keep QemuInputHandlerState in musicpal
      hw/input: keep QemuInputHandlerState in adb-kbd
      hw/input: keep QemuInputHandlerState in stellaris
      hw/m68k: keep QemuInputHandlerState in next-kbd
      ui/input: qemu_input_handler_register to warn for unused result
      hw/input/ps2: use qemu_input_handler_set_led() for LED state
      hw/input/hid: use qemu_input_handler_set_led() for LED state
      hw/input/virtio-input-hid: use qemu_input_handler_set_led() for LED state
      ui/vnc: switch LED handling to Notifier-based input API
      ui/spice: switch LED handling to Notifier-based input API
      ui/dbus: switch LED handling to Notifier-based input API
      ui/input: remove old LED handler broadcast queue

 include/hw/input/ps2.h               |   2 +
 include/hw/input/stellaris_gamepad.h |   2 +
 include/ui/console.h                 |  30 -----
 include/ui/input.h                   |   7 +-
 ui/vnc.h                             |   2 +-
 hw/arm/musicpal.c                    |  13 +-
 hw/i386/vmmouse.c                    | 115 ++++++++++++-----
 hw/input/adb-kbd.c                   |  17 ++-
 hw/input/hid.c                       |   3 +-
 hw/input/ps2.c                       |  28 ++++-
 hw/input/stellaris_gamepad.c         |  12 +-
 hw/input/virtio-input-hid.c          |  15 ++-
 hw/m68k/next-kbd.c                   |  11 +-
 hw/usb/dev-wacom.c                   | 155 ++++++++++++++---------
 tools/qemu-vnc/input.c               |  49 +++-----
 ui/dbus-console.c                    |  11 +-
 ui/input-legacy.c                    | 236 -----------------------------------
 ui/input.c                           |  76 ++++++++++-
 ui/spice-input.c                     |  10 +-
 ui/ui-hmp-cmds.c                     |  22 +++-
 ui/vnc.c                             |  11 +-
 hmp-commands.hx                      |   4 +-
 hw/i386/trace-events                 |   2 +-
 ui/meson.build                       |   1 -
 24 files changed, 404 insertions(+), 430 deletions(-)
---
base-commit: cc329c491768b2d91eb0b0984f3baa0bf805776d
change-id: 20260609-ui-input-f4b63f6d6af3

Best regards,
--  
Marc-André Lureau <[email protected]>


Reply via email to