[mutter/gnome-3-22] wayland/xdg-popup: Force monitor of the top-level
- From: Jonas Ådahl <jadahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/gnome-3-22] wayland/xdg-popup: Force monitor of the top-level
- Date: Tue, 18 Oct 2016 09:18:16 +0000 (UTC)
commit a15d61ba9b73eb938d5f47c3480722227413adf2
Author: Sjoerd Simons <sjoerd simons collabora co uk>
Date: Fri Sep 23 23:09:39 2016 +0200
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
src/wayland/meta-window-wayland.c | 19 +++++++++----------
1 files changed, 9 insertions(+), 10 deletions(-)
---
diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c
index fd630ca..a497dec 100644
--- a/src/wayland/meta-window-wayland.c
+++ b/src/wayland/meta-window-wayland.c
@@ -348,18 +348,17 @@ meta_window_wayland_update_main_monitor (MetaWindow *window)
toplevel_window = meta_wayland_surface_get_toplevel_window (window->surface);
if (toplevel_window != window)
{
- to = toplevel_window->monitor;
- }
- else
- {
- /* 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
- * 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
- * longer have that same new main monitor. */
- to = meta_screen_calculate_monitor_for_window (window->screen, window);
+ window->monitor = toplevel_window->monitor;
+ return;
}
+ /* 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
+ * 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
+ * longer have that same new main monitor. */
+ to = meta_screen_calculate_monitor_for_window (window->screen, window);
+
if (from == to)
return;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]