qemu/ui
Amos Kong 51fc44768a QMP/input-send-event: make console parameter optional
The 'QemuConsole' is the input source for handler, we share some
input handlers to process the input events from different QemuConsole.

Normally we only have one set of keyboard, mouse, usbtablet, etc.
The devices have different mask, it's fine to just checking mask to
insure that the handler has the ability to process the event.

I saw we try to bind console to handler in usb/dev-hid.c, but display
always isn't available at that time.

If we have multiseat setup (as Gerd said), we only have 'problem' in
this case. Actually event from different devices have the same effect
for system, it's fine to always use the first available handler
without caring about the console.

For send-key command, we just pass a NULL for console parameter in
calling qemu_input_event_send_key(NULL, ..), but 'input-send-event'
needs to care more devices.

Conclusion:
Generally assigning the special console is meanless, and we can't
directly remove the QMP parameter for compatibility.

So we can make the parameter optional. The parameter might be useful
for some special condition: we have multiple devices without binding
console and they all have the ability(mask) to process events, and
we don't want to use the first one.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Amos Kong <akong@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2014-11-13 11:06:40 +01:00
..
cocoa.m block: delete cow block driver 2014-09-22 11:39:45 +01:00
console.c console: add graphic_console_set_hwops 2014-09-29 10:20:09 +02:00
curses_keys.h
curses.c input/curses: add kbd delay between keydown and keyup events 2014-06-04 08:40:42 +02:00
cursor_hidden.xpm
cursor_left_ptr.xpm
cursor.c
d3des.c
d3des.h
gtk.c gtk: add GDK_KEY_pause #define 2014-11-04 14:40:20 +01:00
input-keymap.c input: keymap: add meta keys 2014-05-26 08:42:43 +02:00
input-legacy.c input: fix send-key monitor command release event ordering 2014-10-02 09:58:14 +02:00
input.c QMP/input-send-event: make console parameter optional 2014-11-13 11:06:40 +01:00
keymaps.c qemu-char: add support for U-prefixed symbols 2013-11-13 15:48:38 +04:00
keymaps.h
Makefile.objs ui: Use the new ".mo-cflags" rule syntax for SDL_CFLAGS 2014-10-31 11:26:25 +01:00
qemu-pixman.c pixman: fix qemu_default_pixman_format (32bpp non-native endian) 2014-09-30 13:34:04 +02:00
qemu-x509.h
sdl2-keymap.h sdl2: keymap fixups 2014-09-16 08:07:05 +02:00
sdl2.c sdl2: drop sdl_zoom.h 2014-09-16 08:07:05 +02:00
sdl_keysym.h ui/sdl2 : initial port to SDL 2.0 (v2.0) 2014-03-05 09:52:05 +01:00
sdl_zoom_template.h
sdl_zoom.c
sdl_zoom.h
sdl.c console: stop using PixelFormat 2014-09-05 13:27:11 +02:00
spice-core.c spice: call qemu_spice_set_passwd() during init 2014-09-16 08:09:03 +02:00
spice-display.c spice: make sure we don't overflow ssd->buf 2014-09-05 12:19:50 +02:00
spice-input.c spice: input: Fix absolute mouse y coordinates 2014-03-24 08:41:21 +01:00
vgafont.h
vnc_keysym.h qemu-char: add missing characters used in keymaps 2013-11-13 15:48:38 +04:00
vnc-auth-sasl.c
vnc-auth-sasl.h aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
vnc-auth-vencrypt.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
vnc-auth-vencrypt.h
vnc-enc-hextile-template.h
vnc-enc-hextile.c
vnc-enc-tight.c console: Remove unused QEMU_BIG_ENDIAN_FLAG 2014-09-05 15:38:04 +02:00
vnc-enc-tight.h
vnc-enc-zlib.c
vnc-enc-zrle-template.c
vnc-enc-zrle.c
vnc-enc-zrle.h
vnc-enc-zywrle-template.c
vnc-enc-zywrle.h misc: Spelling and grammar fixes in comments 2013-10-26 13:06:45 +04:00
vnc-jobs.c vnc dirty tracking optinizations. 2014-03-11 10:53:17 +00:00
vnc-jobs.h
vnc-palette.c
vnc-palette.h
vnc-tls.c vnc-tls: Clean up dead store in vnc_set_x509_credential() 2014-09-18 08:01:53 +02:00
vnc-tls.h
vnc-ws.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
vnc-ws.h
vnc.c vnc: return directly if no vnc client connected 2014-10-28 11:51:04 +01:00
vnc.h vnc update fix 2014-07-25 09:43:31 +02:00
x_keymap.c
x_keymap.h