df3c610ffc
Each virtual console in the SDL2 frontend has a key state map. When switching windows with GUI keys we have to release all pressed modifier keys in the currently active window, because after the switch the now inactive window no longer receives the key release events. To reproduce the issue open a text editor in the SDL UI and then press Ctrl-Alt-2 to open a Compat Monitor Console. Close the console with the mouse. Try to enter text in the text editor and notice that the modifier keys Ctrl and Alt are stuck and need to be pressed once to be released. Tested-by: Howard Spoelstra <hsp.cat7@gmail.com> Signed-off-by: Volker Rümelin <vr_qemu@t-online.de> Tested-by: Bernhard Beschow <shentey@gmail.com> Message-ID: <20240909061552.6122-2-vr_qemu@t-online.de> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> |
||
---|---|---|
.. | ||
icons | ||
shader | ||
clipboard.c | ||
cocoa.m | ||
console-gl.c | ||
console-priv.h | ||
console-vc-stubs.c | ||
console-vc.c | ||
console.c | ||
curses_keys.h | ||
curses.c | ||
cursor_hidden.xpm | ||
cursor_left_ptr.xpm | ||
cursor.c | ||
dbus-chardev.c | ||
dbus-clipboard.c | ||
dbus-console.c | ||
dbus-display1.xml | ||
dbus-error.c | ||
dbus-listener.c | ||
dbus-module.c | ||
dbus.c | ||
dbus.h | ||
dmabuf.c | ||
egl-context.c | ||
egl-headless.c | ||
egl-helpers.c | ||
gtk-clipboard.c | ||
gtk-egl.c | ||
gtk-gl-area.c | ||
gtk.c | ||
input-barrier.c | ||
input-barrier.h | ||
input-keymap.c | ||
input-legacy.c | ||
input-linux.c | ||
input.c | ||
kbd-state.c | ||
keymaps.c | ||
keymaps.h | ||
meson.build | ||
qemu-pixman.c | ||
qemu-x509.h | ||
qemu.desktop | ||
sdl2-2d.c | ||
sdl2-gl.c | ||
sdl2-input.c | ||
sdl2.c | ||
shader.c | ||
spice-app.c | ||
spice-core.c | ||
spice-display.c | ||
spice-input.c | ||
spice-module.c | ||
trace-events | ||
trace.h | ||
udmabuf.c | ||
ui-hmp-cmds.c | ||
ui-qmp-cmds.c | ||
util.c | ||
vdagent.c | ||
vgafont.h | ||
vnc_keysym.h | ||
vnc-auth-sasl.c | ||
vnc-auth-sasl.h | ||
vnc-auth-vencrypt.c | ||
vnc-auth-vencrypt.h | ||
vnc-clipboard.c | ||
vnc-enc-hextile-template.h | ||
vnc-enc-hextile.c | ||
vnc-enc-tight.c | ||
vnc-enc-tight.h | ||
vnc-enc-zlib.c | ||
vnc-enc-zrle.c | ||
vnc-enc-zrle.c.inc | ||
vnc-enc-zrle.h | ||
vnc-enc-zywrle-template.c | ||
vnc-enc-zywrle.h | ||
vnc-jobs.c | ||
vnc-jobs.h | ||
vnc-palette.c | ||
vnc-palette.h | ||
vnc-stubs.c | ||
vnc-ws.c | ||
vnc-ws.h | ||
vnc.c | ||
vnc.h | ||
win32-kbd-hook.c | ||
x_keymap.c | ||
x_keymap.h |