]> Git Repo - qemu.git/commitdiff
ui/sdl2: start in full screen with grab enabled
authorVolker Rümelin <[email protected]>
Sat, 16 May 2020 07:20:10 +0000 (09:20 +0200)
committerGerd Hoffmann <[email protected]>
Tue, 19 May 2020 07:06:44 +0000 (09:06 +0200)
QEMU with SDL 1.2 display used to enable keyboard and mouse grab-
bing when started in full screen. The SDL 2.0 code tries to do
the same but fails to enable grabbing because sdl_grab_start(0)
returns early. To do it's work the sdl_grab_start() function
needs a pointer to a sdl2_console structure.

Signed-off-by: Volker Rümelin <[email protected]>
Message-id: 20200516072014[email protected]
Signed-off-by: Gerd Hoffmann <[email protected]>
ui/sdl2.c

index 79c1ea29d22333e31db12da6f79b627c0ff97c73..b23a8f0a8ebf554ab744261b76d055e3e1287f06 100644 (file)
--- a/ui/sdl2.c
+++ b/ui/sdl2.c
@@ -881,17 +881,16 @@ static void sdl2_display_init(DisplayState *ds, DisplayOptions *o)
         SDL_SetWindowIcon(sdl2_console[0].real_window, icon);
     }
 
-    gui_grab = 0;
-    if (gui_fullscreen) {
-        sdl_grab_start(0);
-    }
-
     mouse_mode_notifier.notify = sdl_mouse_mode_change;
     qemu_add_mouse_mode_change_notifier(&mouse_mode_notifier);
 
     sdl_cursor_hidden = SDL_CreateCursor(&data, &data, 8, 1, 0, 0);
     sdl_cursor_normal = SDL_GetCursor();
 
+    if (gui_fullscreen) {
+        sdl_grab_start(&sdl2_console[0]);
+    }
+
     atexit(sdl_cleanup);
 }
 
This page took 0.027475 seconds and 4 git commands to generate.