GNOME Bugzilla – Bug 722108
window: Atomically unmaximize both directions from a _NET_WM_STATE ClientMessage
Last modified: 2014-01-13 16:35:30 UTC
When GDK sends an unmaximize _NET_WM_STATE ClientMessage, it tells us to remove the _NET_WM_STATE_MAXIMIZED_HORZ and _NET_WM_STATE_MAXIMIZED_VERT states. Before this time, it would independently call: meta_window_unmaximize (window, META_MAXIMIZE_HORIZONTAL); meta_window_unmaximize (window, META_MAXIMIZE_VERTICAL); Which, besides being foolishly inefficient, would also mess up our saved_rect tracking, causing the window to only look like it was unmaximized vertically. Make this code more intelligent, so it causes us to unmaximize in one call.
Created attachment 266164 [details] [review] window: Atomically unmaximize both directions from a _NET_WM_STATE ClientMessage
Review of attachment 266164 [details] [review]: Other than that it looks fine to me. ::: src/core/window.c @@ +6892,3 @@ { gboolean max; + MetaMaximizeFlags directions; This can't go uninitialized.
Attachment 266164 [details] pushed as 0b003bb - window: Atomically unmaximize both directions from a _NET_WM_STATE ClientMessage