On Thu, May 19, 2022 at 09:27:08AM +0200, Thomas Huth wrote: > On 19/05/2022 09.08, Thomas Huth wrote: > > On 19/05/2022 08.39, Thomas Huth wrote: > > > On 18/05/2022 17.08, Markus Armbruster wrote: > > > > Thomas Huth <thuth@xxxxxxxxxx> writes: > > > > > > > > > The "-display sdl" option still uses a hand-crafted parser for its > > > > > parameters since we didn't want to drag an interface we considered > > > > > somewhat flawed into the QAPI schema. Since the flaws are gone now, > > > > > it's time to QAPIfy. > > > > > > > > > > This introduces the new "DisplaySDL" QAPI struct that is used to hold > > > > > the parameters that are unique to the SDL display. The only specific > > > > > parameter is currently "grab-mod" that is used to specify the required > > > > > modifier keys to escape from the mouse grabbing mode. > > > > > > > > > > Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx> > > > > > --- > > > > > qapi/ui.json | 27 +++++++++++++++- > > > > > include/sysemu/sysemu.h | 2 -- > > > > > softmmu/globals.c | 2 -- > > > > > softmmu/vl.c | 70 +---------------------------------------- > > > > > ui/sdl2.c | 10 ++++++ > > > > > 5 files changed, 37 insertions(+), 74 deletions(-) > > > > > > > > > > diff --git a/qapi/ui.json b/qapi/ui.json > > > > > index 11a827d10f..a244e26e0f 100644 > > > > > --- a/qapi/ui.json > > > > > +++ b/qapi/ui.json > > > > > @@ -1295,6 +1295,30 @@ > > > > > '*swap-opt-cmd': 'bool' > > > > > } } > > > > > +## > > > > > +# @GrabMod: > > > > > +# > > > > > +# Set of modifier keys that need to be hold for shortcut key actions. > > > > > +# > > > > > +# Since: 7.1 > > > > > +## > > > > > +{ 'enum' : 'GrabMod', > > > > > + 'data' : [ 'lctrl-lalt', 'lshift-lctrl-lalt', 'rctrl' ] } > > > > > > > > This is fine now. If we ever generalize to "arbitrary set of modifier > > > > keys", it'll become somewhat awkward. No objection from me. > > Oh well, I just noticed that we already have a GrabToggleKeys enum in > qapi/common.json ... I wonder whether I should try to use that instead? It > seems to be used in a slightly different context, though, if I get that > right ...? It also doesn't distinguish left & right control/alt/shift keys for some reason. So you would end up having to add more enum entries for SDL, none of which overlap with existing enum entries. Rather a pity, as the consistency would have been nice With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|