From: Christian Hergert Date: Tue, 22 Feb 2022 08:33:03 +0000 (-0800) Subject: macos: reload IOSurface when monitor configuration changes X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~19^2~3^2~72^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=42164fa8bb6eb363af1e7fb5f0662aea3cdf4ed8;p=gtk4.git macos: reload IOSurface when monitor configuration changes We also want to reload buffer contents if the display server changes the monitor configuration, such as after changing resolution or orientation. --- diff --git a/gdk/macos/gdkmacosdisplay.c b/gdk/macos/gdkmacosdisplay.c index a8af833eb5..74095504a2 100644 --- a/gdk/macos/gdkmacosdisplay.c +++ b/gdk/macos/gdkmacosdisplay.c @@ -173,8 +173,7 @@ gdk_macos_display_monitors_changed_cb (CFNotificationCenterRef center, _gdk_macos_display_reload_monitors (self); /* Now we need to update all our surface positions since they - * probably just changed origins. We ignore the popup surfaces - * since we can rely on the toplevel surfaces to handle that. + * probably just changed origins. */ for (const GList *iter = _gdk_macos_display_get_surfaces (self); iter != NULL; @@ -184,8 +183,7 @@ gdk_macos_display_monitors_changed_cb (CFNotificationCenterRef center, g_assert (GDK_IS_MACOS_SURFACE (surface)); - if (GDK_IS_TOPLEVEL (surface)) - _gdk_macos_surface_configure (surface); + _gdk_macos_surface_monitor_changed (surface); } }