Hi, The input layer moves to a model modeled roughly after the linux event layer. It also uses qapi to create all the data types needed. First, because it is convinient to have all the support code generated, and also to make it easier to integrate with qmp some day.
Porting work has only be done on the UI side so far. Input device emulation is still to be done. Pull v4 rebase, fix build failure. Pull v3 combines all sdl2 changes into a single patch. Pull v2 fixes minor issues and adds missing sign-offs. cheers, Gerd The following changes since commit f55ea6297cc0224fe4934b90ff5343b620b14669: block/gluster: Add missing argument to qemu_gluster_init() call (2014-03-04 20:20:57 +0000) are available in the git repository at: git://git.kraxel.org/qemu tags/pull-input-4 for you to fetch changes up to 47c03744b37c72b8f633b03380d5a323615b9ac4: ui/sdl2 : initial port to SDL 2.0 (v2.0) (2014-03-05 09:52:05 +0100) ---------------------------------------------------------------- Input handling rewrite. SDL2 support. ---------------------------------------------------------------- Dave Airlie (1): ui/sdl2 : initial port to SDL 2.0 (v2.0) Gerd Hoffmann (37): console: export QemuConsole index,width,height input: rename file to legacy input: qapi: define event types input: qapi: add unmapped key input: qapi: add pause key 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 input: keyboard: switch vnc ui to new core input: keyboard: switch spice ui to new core input: keyboard: switch curses ui to new core 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 input: mouse: switch vnc ui to new core input: mouse: switch spice ui to new core input: mouse: switch monitor to new core input: keyboard: switch cocoa ui to new core input: mouse: switch cocoa ui to new core input: trace events input-legacy: remove kbd_put_keycode input-legacy: remove kbd_mouse_has_absolute input-legacy: remove kbd_mouse_is_absolute input-legacy: remove kbd_mouse_event input: move mouse mode notifier to new core input: add input_mouse_mode tracepoint input: move qmp_query_mice to new core input: move do_mouse_set to new core input: remove index_from_keycode (no users) console: add head to index to qemu consoles. console: add QemuUIInfo backends/baum.c | 4 +- configure | 23 +- hw/arm/musicpal.c | 2 +- hw/display/blizzard.c | 2 +- hw/display/cg3.c | 2 +- hw/display/cirrus_vga.c | 4 +- hw/display/exynos4210_fimd.c | 2 +- hw/display/g364fb.c | 2 +- hw/display/jazz_led.c | 2 +- hw/display/milkymist-vgafb.c | 2 +- hw/display/omap_lcdc.c | 2 +- hw/display/pl110.c | 2 +- hw/display/pxa2xx_lcd.c | 2 +- hw/display/qxl.c | 4 +- hw/display/sm501.c | 2 +- hw/display/ssd0303.c | 2 +- hw/display/ssd0323.c | 2 +- hw/display/tc6393xb.c | 2 +- hw/display/tcx.c | 4 +- hw/display/vga-isa-mm.c | 2 +- hw/display/vga-isa.c | 2 +- hw/display/vga-pci.c | 2 +- hw/display/vmware_vga.c | 2 +- hw/unicore32/puv3.c | 2 +- include/ui/console.h | 33 +- include/ui/input.h | 56 +++ monitor.c | 31 +- qapi-schema.json | 83 ++++- trace-events | 9 + ui/Makefile.objs | 6 +- ui/cocoa.m | 81 +++-- ui/console.c | 69 +++- ui/curses.c | 47 +-- ui/gtk.c | 77 ++-- ui/input-legacy.c | 453 +++++++++++++++++++++++ ui/input.c | 682 +++++++++++++---------------------- ui/sdl.c | 114 +++--- ui/sdl2-keymap.h | 266 ++++++++++++++ ui/sdl2.c | 829 +++++++++++++++++++++++++++++++++++++++++++ ui/sdl_keysym.h | 3 +- ui/spice-input.c | 84 +++-- ui/vnc.c | 71 ++-- ui/vnc.h | 1 + 43 files changed, 2330 insertions(+), 742 deletions(-) create mode 100644 include/ui/input.h create mode 100644 ui/input-legacy.c create mode 100644 ui/sdl2-keymap.h create mode 100644 ui/sdl2.c