From: Dongwon Kim <[email protected]>

This series resolves several issues regarding keyboard shortcuts and
fullscreen behavior in the QEMU GTK UI.

 1. Detached (untabified) windows properly support fullscreen and zoom
    accelerators.
 2. The "Grab Input" accelerator remains functional in fullscreen mode when
    the menubar is hidden.
 3. Initial fullscreen setup is deferred until the window is properly
    realized to avoid display configuration race conditions.

v2:
 - Return TRUE in accelerator callbacks (gd_accel_grab_input, gd_win_*) to
   comply with the GtkAccelGroupActivate prototype.
 - Restore scale to preferred_scale and trigger gd_update_cursor() on
   fullscreen exit.
 - Deduplicate zoom handling by sharing gd_win_zoom_* across menu actions.
 - Guard zoom helpers against NULL / non-GFX consoles.
 - Remove leftover debug fprintf in gd_win_grab.

v3:
 - Add gd_is_full_screen() to query GdkWindowState directly and replace
   s->full_screen checks across attached and detached consoles
 - Keep zoom_fit_item deactivation in gd_menu_zoom_* while keeping
   gd_win_zoom_* focused on per-VC scaling
 - Restrict global free_scale handling to attached consoles so detached
   window geometry is not overridden
 - Use gd_is_full_screen for full_screen check in gd_window_map_event

Dongwon Kim (3):
  ui/gtk: Enable fullscreen and zoom hotkeys for detached windows
  ui/gtk: Register "Grab Input" shortcut to accel_group
  ui/gtk: Defer initial fullscreen activation until window is mapped

 include/ui/gtk.h |   2 -
 ui/gtk.c         | 223 ++++++++++++++++++++++++++++++++++++-----------
 2 files changed, 170 insertions(+), 55 deletions(-)

-- 
2.43.0


Reply via email to