mirror of
https://github.com/brl/mutter.git
synced 2024-12-24 20:12:06 +00:00
wayland/xdg-popup: Force monitor of the top-level
Directly set the monitor of the toplevel window for the popup to avoid the change not being applied due to later constraints calculation. Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk> https://bugzilla.gnome.org/show_bug.cgi?id=771841
This commit is contained in:
parent
a3d7ae6214
commit
8a6fa726d3
@ -348,17 +348,16 @@ meta_window_wayland_update_main_monitor (MetaWindow *window)
|
|||||||
toplevel_window = meta_wayland_surface_get_toplevel_window (window->surface);
|
toplevel_window = meta_wayland_surface_get_toplevel_window (window->surface);
|
||||||
if (toplevel_window != window)
|
if (toplevel_window != window)
|
||||||
{
|
{
|
||||||
to = toplevel_window->monitor;
|
window->monitor = toplevel_window->monitor;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
/* Require both the current and the new monitor would be the new main monitor,
|
/* Require both the current and the new monitor would be the new main monitor,
|
||||||
* even given the resulting scale the window would end up having. This is
|
* even given the resulting scale the window would end up having. This is
|
||||||
* needed to avoid jumping back and forth between the new and the old, since
|
* needed to avoid jumping back and forth between the new and the old, since
|
||||||
* changing main monitor may cause the window to be resized so that it no
|
* changing main monitor may cause the window to be resized so that it no
|
||||||
* longer have that same new main monitor. */
|
* longer have that same new main monitor. */
|
||||||
to = meta_screen_calculate_monitor_for_window (window->screen, window);
|
to = meta_screen_calculate_monitor_for_window (window->screen, window);
|
||||||
}
|
|
||||||
|
|
||||||
if (from == to)
|
if (from == to)
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user