x11-display: Make subwindow redirection call mode specific
This means that for X11 sessions we'll do it before any windows are mapped, and before any plugin implementation is started. Doing it before a plugin is started is important, because things that the plugin does during startup can have consequences on how compositing on Xorg works. For the Xwayland case, we'll do it relatively in the setup phase. It appears to have been harmless to do it later in the post-opened signal, but there is no harm in doing it as one of the earlier steps. Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3089 Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3329>
This commit is contained in:
parent
1ccf2cfb56
commit
de31822ecc
3 changed files with 3 additions and 1 deletions
|
@ -188,6 +188,8 @@ meta_compositor_x11_manage (MetaCompositor *compositor,
|
|||
|
||||
compositor_x11->have_x11_sync_object = meta_sync_ring_init (xdisplay);
|
||||
|
||||
meta_x11_display_redirect_windows (x11_display, display);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
|
|
@ -1180,6 +1180,7 @@ on_x11_display_setup (MetaDisplay *display,
|
|||
{
|
||||
MetaX11Display *x11_display = meta_display_get_x11_display (display);
|
||||
|
||||
meta_x11_display_redirect_windows (x11_display, display);
|
||||
meta_xwayland_init_dnd (x11_display);
|
||||
meta_xwayland_init_xrandr (manager, x11_display);
|
||||
}
|
||||
|
|
|
@ -307,7 +307,6 @@ on_x11_display_opened (MetaX11Display *x11_display,
|
|||
MetaDisplay *display)
|
||||
{
|
||||
meta_display_manage_all_xwindows (display);
|
||||
meta_x11_display_redirect_windows (x11_display, display);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in a new issue