We want to ensure that we recalculate the sort order of windows before
processing the motion. Generally this would be done in response from the
display server in GdkMacosWindow, but I've seen it possible to race there.
static void
_gdk_macos_surface_do_delayed_show (GdkMacosSurface *self)
{
+ GdkSurface *surface = (GdkSurface *)self;
+
g_assert (GDK_IS_MACOS_SURFACE (self));
self->show_on_next_swap = FALSE;
[self->window showAndMakeKey:YES];
- gdk_surface_request_motion (GDK_SURFACE (self));
+
+ _gdk_macos_display_clear_sorting (GDK_MACOS_DISPLAY (surface->display));
+ gdk_surface_request_motion (surface);
}
void