forked from AuroraMiddleware/gtk
window: Fix state updates
When the compositor unmaximized the window, we get a state-changed signal, and we update the maximized field. But then we go and recompute our layout based on the maximize_initially field, and that is still TRUE, when we were maximized initially. So we need to update both fields. This fixes a problem where using the window menu to unmaximize an initially maximized window would not work. Fixes: #3226
This commit is contained in:
parent
7671c1074b
commit
10d7ccc8e0
@ -4702,11 +4702,16 @@ surface_state_changed (GtkWidget *widget)
|
||||
}
|
||||
|
||||
if (changed_mask & GDK_TOPLEVEL_STATE_FULLSCREEN)
|
||||
priv->fullscreen = (new_surface_state & GDK_TOPLEVEL_STATE_FULLSCREEN) ? TRUE : FALSE;
|
||||
{
|
||||
priv->fullscreen = (new_surface_state & GDK_TOPLEVEL_STATE_FULLSCREEN) ? TRUE : FALSE;
|
||||
priv->fullscreen_initially = priv->fullscreen;
|
||||
}
|
||||
|
||||
if (changed_mask & GDK_TOPLEVEL_STATE_MAXIMIZED)
|
||||
{
|
||||
priv->maximized = (new_surface_state & GDK_TOPLEVEL_STATE_MAXIMIZED) ? TRUE : FALSE;
|
||||
priv->maximize_initially = priv->maximized;
|
||||
|
||||
g_object_notify_by_pspec (G_OBJECT (widget), window_props[PROP_IS_MAXIMIZED]);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user