Hi, This patch series is the first draft of a input layer rewrite. New core code is largely in place. There is some windup for the legacy functions, to keep things working while switching over users one by one.
Some ui code is converted to make clear how the new input layer should be used. No work on the device emulation side of things yet. Main motivation for this is multihead support. Thats why QemuConsole is passed everythere, even though the code doesn't use it (yet). But some day the input layer has the should be able to process/route events depending on the source. Easy monitor integration is on the radar too, even though none if this is coded up yet. I wanna test the data structures more before even thinking about exposing them via qmp. In general the new way of handling events should more flexible and be easier to extend than the old code we have right now. We might want add touch support for example ... Reviews? Comments? cheers, Gerd Gerd Hoffmann (15): console: export QemuConsole index,width,height input: rename file to legacy input: define event types using qapi input: add core bits of the new input layer input: keyboard: add helper functions to core input: keyboard: switch legacy handlers to new core input: keyboard: switch qmp_send_key() to new core. input: keyboard: switch gtk ui to new core input: keyboard: switch sdl ui to new core [wip] input: mouse: add helpers functions to core input: mouse: add graphic_rotate support input: mouse: add qemu_input_is_absolute() input: mouse: switch legacy handlers to new core input: mouse: switch gtk ui to new core input: mouse: switch sdl ui to new core include/ui/console.h | 3 + include/ui/input.h | 50 ++++ qapi-schema.json | 29 +++ ui/Makefile.objs | 2 +- ui/console.c | 24 ++ ui/gtk.c | 77 ++---- ui/input-legacy.c | 650 +++++++++++++++++++++++++++++++++++++++++++++++++++ ui/input.c | 627 +++++++++++-------------------------------------- ui/sdl.c | 88 +++---- 9 files changed, 965 insertions(+), 585 deletions(-) create mode 100644 include/ui/input.h create mode 100644 ui/input-legacy.c -- 1.8.3.1