summaryrefslogtreecommitdiffstats
path: root/qemu-options.hx
diff options
context:
space:
mode:
authorThomas Huth2021-08-25 11:20:21 +0200
committerThomas Huth2021-09-06 10:00:14 +0200
commit8e8e844be48d6e367e523ac418a83a3046cdebfa (patch)
treec820a6c6cfd7c9d6fe5ddbed7820df88cb34006c /qemu-options.hx
parentscripts: Remove the "show-fixed-bugs.sh" file (diff)
downloadqemu-8e8e844be48d6e367e523ac418a83a3046cdebfa.tar.gz
qemu-8e8e844be48d6e367e523ac418a83a3046cdebfa.tar.xz
qemu-8e8e844be48d6e367e523ac418a83a3046cdebfa.zip
softmmu/vl: Add a "grab-mod" parameter to the -display sdl option
The -display sdl option is not using QAPI internally yet, and uses hand- crafted parsing instead (see parse_display() in vl.c), which is quite ugly, since most of the other code is using the QAPIfied DisplayOption already. Unfortunately, the "alt_grab" and "ctrl_grab" use underscores in their names which has recently been forbidden in new QAPI code, so a straight conversion is not possible. While we could add some exceptions to the QAPI schema parser for this, the way these parameters have been designed was maybe a bad idea anyway: First, it's not possible to enable both parameters at the same time, thus instead of two boolean parameters it would be better to have only one multi-choice parameter instead. Second, the naming is also somewhat unfortunate since the "alt_grab" parameter is not about the ALT key, but rather about the left SHIFT key that has to be used additionally when the parameter is enabled. So instead of trying to QAPIfy "alt_grab" and "ctrl_grab", let's rather introduce an alternative to these parameters instead, a new parameter called "grab-mod" which can either be set to "lshift-lctrl-lalt" or to "rctrl". In case we ever want to support additional modes later, we can then also simply extend the list of supported strings here. Message-Id: <20210825092023.81396-2-thuth@redhat.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'qemu-options.hx')
-rw-r--r--qemu-options.hx6
1 files changed, 5 insertions, 1 deletions
diff --git a/qemu-options.hx b/qemu-options.hx
index 4a9ee722c9..124ed51ede 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -1834,7 +1834,7 @@ DEF("display", HAS_ARG, QEMU_OPTION_display,
#endif
#if defined(CONFIG_SDL)
"-display sdl[,alt_grab=on|off][,ctrl_grab=on|off][,gl=on|core|es|off]\n"
- " [,show-cursor=on|off][,window-close=on|off]\n"
+ " [,grab-mod=<mod>][,show-cursor=on|off][,window-close=on|off]\n"
#endif
#if defined(CONFIG_GTK)
"-display gtk[,full-screen=on|off][,gl=on|off][,grab-on-hover=on|off]\n"
@@ -1880,6 +1880,10 @@ SRST
window; see the SDL documentation for other possibilities).
Valid parameters are:
+ ``grab-mod=<mods>`` : Used to select the modifier keys for toggling
+ the mouse grabbing in conjunction with the "g" key. `<mods>` can be
+ either `lshift-lctrl-lalt` or `rctrl`.
+
``alt_grab=on|off`` : Use Control+Alt+Shift-g to toggle mouse grabbing
``ctrl_grab=on|off`` : Use Right-Control-g to toggle mouse grabbing