qemu/ui
Daniel P. Berrangé 1e70de679d ui: fix keymap detection under Xwayland
The X11 code currently detects the keymap by looking for the keycode
name property. Unfortunately due to the way Xwayland handles keyboards,
this property gets unset almost immediately after the first application
starts using Xwayland resulting in

  ** (qemu-system-x86_64:19644): WARNING **: Unknown X11 keycode mapping '(unnamed)'.
  Please report to qemu-devel@nongnu.org
  including the following information:

    - Operating system
    - X11 Server
    - xprop -root
    - xdpyinfo

Fortunately people will only see this problem if they built QEMU with
GTK2, or have told GTK3 to prefer X11 by setting the GDK_BACKEND=x11
env variable.

To workaround the problem, we add a heuristic that looks at what
scancode the XK_Page_Up keysymbol maps to, to determine if we've
likely got the X11 kbd or evdev driver.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20180313104235.20725-1-berrange@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2018-04-10 11:21:54 +02:00
..
keycodemapdb@6b3d716e2b ui: update keycodemapdb to get py3 fixes 2018-02-05 19:53:55 -02:00
shader opengl: add flipping vertex shader 2017-10-17 10:25:42 +02:00
cocoa.m Polish the version strings containing the package version 2018-03-12 16:12:47 +01:00
console-gl.c ui: use QEMU_IS_ALIGNED macro 2017-11-10 14:27:29 +01:00
console.c ui: add ctrl modifier support to kbd_put_qcode_console() 2018-04-09 10:40:47 +02:00
curses_keys.h ui: add next and prior keysyms 2017-07-27 14:23:09 +02:00
curses.c curses: switch over to new display registry 2018-03-05 08:44:11 +01:00
cursor_hidden.xpm
cursor_left_ptr.xpm
cursor.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
egl-context.c egl: explicitly ask for core context 2017-05-12 12:02:48 +02:00
egl-headless.c egl-headless: switch over to new display registry 2018-03-05 08:44:11 +01:00
egl-helpers.c egl-helpers: add alpha channel to texture format 2018-02-22 10:35:09 +01:00
gtk-egl.c ui/gtk-egl: add cursor_dmabuf support 2018-03-12 09:00:34 +01:00
gtk-gl-area.c ui: opengl updates for dma-buf support. 2017-10-19 12:09:53 +01:00
gtk.c ui: add ctrl modifier support to kbd_put_qcode_console() 2018-04-09 10:40:47 +02:00
input-keymap.c ui: fix alphabetical ordering of keymaps 2018-01-29 09:35:43 +01:00
input-legacy.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
input-linux.c ui: move qemu_input_linux_to_qcode() 2017-07-27 14:23:09 +02:00
input.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
keymaps.c keymap: consider modifier state when picking a mapping 2018-02-22 10:35:32 +01:00
keymaps.h keymap: consider modifier state when picking a mapping 2018-02-22 10:35:32 +01:00
Makefile.objs ui/opengl: Makefile cleanup 2018-03-12 09:00:34 +01:00
qemu-pixman.c ui/pixman: add qemu_drm_format_to_pixman() 2018-03-13 11:17:28 -06:00
qemu-x509.h
sdl2-2d.c sdl: restore optimized redraw 2018-02-16 12:25:35 +01:00
sdl2-gl.c sdl2: Remove unused epoxy include 2018-04-04 15:45:12 +02:00
sdl2-input.c sdl2: drop dead code 2018-04-09 10:40:47 +02:00
sdl2.c sdl: switch over to new display registry 2018-03-05 08:44:11 +01:00
sdl_keysym.h
sdl_zoom_template.h maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
sdl_zoom.c all: Remove unnecessary glib.h includes 2016-06-07 18:19:24 +03:00
sdl_zoom.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
sdl.c sdl: switch over to new display registry 2018-03-05 08:44:11 +01:00
shader.c opengl: add flipping vertex shader 2017-10-17 10:25:42 +02:00
spice-core.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
spice-display.c spice: add cursor_dmabuf support 2018-03-12 09:01:56 +01:00
spice-input.c ui: correctly detect spice PAUSE scancode sequence 2017-07-28 12:35:40 +02:00
trace-events console: minimal hotplug suport 2018-03-13 11:17:29 -06:00
vgafont.h
vnc_keysym.h ui: add next and prior keysyms 2017-07-27 14:23:09 +02:00
vnc-auth-sasl.c ui: extend VNC trottling tracing to SASL codepaths 2018-02-16 12:33:02 +01:00
vnc-auth-sasl.h ui: mix misleading comments & return types of VNC I/O helper methods 2018-01-12 13:48:54 +01:00
vnc-auth-vencrypt.c qio: non-default context for TLS handshake 2018-03-06 10:19:07 +00:00
vnc-auth-vencrypt.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
vnc-enc-hextile-template.h
vnc-enc-hextile.c ui: Clean up includes 2016-02-04 17:01:04 +00:00
vnc-enc-tight.c vnc: use DIV_ROUND_UP 2017-08-31 12:29:07 +02:00
vnc-enc-tight.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
vnc-enc-zlib.c ui: Clean up includes 2016-02-04 17:01:04 +00:00
vnc-enc-zrle-template.c ui: Clean up includes 2016-02-04 17:01:04 +00:00
vnc-enc-zrle.c vnc: simple clean up 2017-05-12 12:34:31 +02:00
vnc-enc-zrle.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
vnc-enc-zywrle-template.c ui: Clean up includes 2016-02-04 17:01:04 +00:00
vnc-enc-zywrle.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
vnc-jobs.c vnc: fix segfault in closed connection handling 2018-02-16 12:23:54 +01:00
vnc-jobs.h ui/vnc: Drop unused vnc_has_job() and vnc_jobs_clear() 2017-02-08 14:59:36 +01:00
vnc-palette.c all: Remove unnecessary glib.h includes 2016-06-07 18:19:24 +03:00
vnc-palette.h Include qapi/qmp/qlist.h exactly where needed 2018-02-09 13:52:15 +01:00
vnc-stubs.c vnc: add qapi/error.h include to stubs 2018-02-16 12:23:21 +01:00
vnc-ws.c qio: non-default context for TLS handshake 2018-03-06 10:19:07 +00:00
vnc-ws.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
vnc.c vnc: deal with surface NULL pointers 2018-03-12 09:00:59 +01:00
vnc.h Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
x_keymap.c ui: fix keymap detection under Xwayland 2018-04-10 11:21:54 +02:00
x_keymap.h ui: convert GTK and SDL1 frontends to keycodemapdb 2018-01-25 15:02:00 +01:00