[gtk/gtk-3-24: 3/5] wayland: Treat being tiled as maximized when saving size



commit 50aa947e517dee0d0d00a5d1f5e8d629be169b89
Author: Jonas Ã…dahl <jadahl gmail com>
Date:   Thu Apr 2 17:51:57 2020 +0200

    wayland: Treat being tiled as maximized when saving size
    
    We should never save a size when we're tiled, just as we shouldn't when
    we're maximized. This fixes returning to the correct floating size after
    having been tiled or maximized.

 gdk/wayland/gdkwindow-wayland.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)
---
diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c
index e0fc4010df..9c9d311abf 100644
--- a/gdk/wayland/gdkwindow-wayland.c
+++ b/gdk/wayland/gdkwindow-wayland.c
@@ -315,7 +315,9 @@ _gdk_wayland_window_save_size (GdkWindow *window)
 {
   GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
 
-  if (window->state & (GDK_WINDOW_STATE_FULLSCREEN | GDK_WINDOW_STATE_MAXIMIZED))
+  if (window->state & (GDK_WINDOW_STATE_FULLSCREEN |
+                       GDK_WINDOW_STATE_MAXIMIZED |
+                       GDK_WINDOW_STATE_TILED))
     return;
 
   impl->saved_width = window->width - impl->margin_left - impl->margin_right;
@@ -327,7 +329,9 @@ _gdk_wayland_window_clear_saved_size (GdkWindow *window)
 {
   GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
 
-  if (window->state & (GDK_WINDOW_STATE_FULLSCREEN | GDK_WINDOW_STATE_MAXIMIZED))
+  if (window->state & (GDK_WINDOW_STATE_FULLSCREEN |
+                       GDK_WINDOW_STATE_MAXIMIZED |
+                       GDK_WINDOW_STATE_TILED))
     return;
 
   impl->saved_width = -1;
@@ -3348,7 +3352,9 @@ gdk_window_wayland_move_resize (GdkWindow *window,
         }
     }
 
-  if (window->state & (GDK_WINDOW_STATE_FULLSCREEN | GDK_WINDOW_STATE_MAXIMIZED))
+  if (window->state & (GDK_WINDOW_STATE_FULLSCREEN |
+                       GDK_WINDOW_STATE_MAXIMIZED |
+                       GDK_WINDOW_STATE_TILED))
     {
       impl->saved_width = width;
       impl->saved_height = height;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]