summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openbox/client.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 875c790b..1d7d17e9 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -1685,10 +1685,6 @@ void client_setup_decor_and_functions(ObClient *self)
}
}
- /* can't resize maximized windows */
- if (self->max_horz && self->max_vert)
- self->functions &=~ OB_CLIENT_FUNC_RESIZE;
-
if (!(self->functions & OB_CLIENT_FUNC_SHADE))
self->decorations &= ~OB_FRAME_DECOR_SHADE;
if (!(self->functions & OB_CLIENT_FUNC_ICONIFY))
@@ -1704,6 +1700,15 @@ void client_setup_decor_and_functions(ObClient *self)
self->decorations &= ~OB_FRAME_DECOR_MAXIMIZE;
}
+ if (self->max_horz && self->max_vert) {
+ /* also can't resize maximized windows.
+ do this after checking for resize to let you maximize */
+ self->functions &=~ OB_CLIENT_FUNC_RESIZE;
+
+ /* kill the handle on fully maxed windows */
+ self->decorations &= ~(OB_FRAME_DECOR_HANDLE | OB_FRAME_DECOR_GRIPS);
+ }
+
/* If there are no decorations to remove, don't allow the user to try
toggle the state */
if (self->decorations == 0)