mbox

[PULL,v3,00/38] rework input handling, sdl2 support

Message ID 1393596409-28934-1-git-send-email-kraxel@redhat.com
State New
Headers show

Pull-request

git://git.kraxel.org/qemu tags/pull-input-3

Message

Gerd Hoffmann Feb. 28, 2014, 2:06 p.m. UTC
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 v3 combines all sdl2 changes into a single patch.
Pull v2 fixes minor issues and adds missing sign-offs.

please pull,
  Gerd

The following changes since commit 9fbee91a131a05e443d7108d7fbdf3ca91020290:

  Merge remote-tracking branch 'remotes/kvm/uq/master' into staging (2014-02-27 16:00:31 +0000)

are available in the git repository at:


  git://git.kraxel.org/qemu tags/pull-input-3

for you to fetch changes up to 5db74ecf4e313e4667dce3076e5df37e9778a320:

  ui/sdl2 : initial port to SDL 2.0 (v2.0) (2014-02-28 10:29:00 +0100)

----------------------------------------------------------------
Input handling rewrite.
SLD2 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/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                   | 684 +++++++++++++----------------------
 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 +
 42 files changed, 2331 insertions(+), 741 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

Comments

Peter Maydell March 4, 2014, 3:54 p.m. UTC | #1
On 28 February 2014 14:06, Gerd Hoffmann <kraxel@redhat.com> wrote:
>   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.

Looks like you lost a merge race with the SPARC pullreq
that adds cg3 support:

make: Entering directory `/home/petmay01/linaro/qemu-for-merges/build/all'
  CC    sparc-softmmu/hw/display/cg3.o
/home/petmay01/linaro/qemu-for-merges/hw/display/cg3.c: In function
‘cg3_realizefn’:
/home/petmay01/linaro/qemu-for-merges/hw/display/cg3.c:309:5: error:
passing argument 2 of ‘graphic_console_init’ makes integer from
pointer without a cast [-Werror]
/home/petmay01/linaro/qemu-for-merges/include/ui/console.h:282:14:
note: expected ‘uint32_t’ but argument is of type ‘const struct
GraphicHwOps *’
/home/petmay01/linaro/qemu-for-merges/hw/display/cg3.c:309:5: error:
passing argument 3 of ‘graphic_console_init’ from incompatible pointer
type [-Werror]
/home/petmay01/linaro/qemu-for-merges/include/ui/console.h:282:14:
note: expected ‘const struct GraphicHwOps *’ but argument is of type
‘struct CG3State *’
/home/petmay01/linaro/qemu-for-merges/hw/display/cg3.c:309:5: error:
too few arguments to function ‘graphic_console_init’
/home/petmay01/linaro/qemu-for-merges/include/ui/console.h:282:14:
note: declared here

thanks
-- PMM