make sure windows which cant be moved or resized also can't be fullscreened
This commit is contained in:
parent
0d84c43d2a
commit
7beec94a1f
1 changed files with 13 additions and 1 deletions
|
@ -794,7 +794,7 @@ void client_setup_decor_and_functions(Client *self)
|
|||
|
||||
/* can't maximize without moving/resizing */
|
||||
if (!((self->functions & Func_Move) && (self->functions & Func_Resize)))
|
||||
self->functions &= ~Func_Maximize;
|
||||
self->functions &= ~(Func_Maximize | Func_Fullscreen);
|
||||
|
||||
/* finally, user specified disabled decorations are applied to subtract
|
||||
decorations */
|
||||
|
@ -1307,6 +1307,18 @@ void client_configure(Client *self, Corner anchor, int x, int y, int w, int h,
|
|||
}
|
||||
}
|
||||
|
||||
/* these override the above states! if you cant move you can't move! */
|
||||
if (user) {
|
||||
if (!(self->functions & Func_Move)) {
|
||||
x = self->area.x;
|
||||
y = self->area.y;
|
||||
}
|
||||
if (!(self->functions & Func_Resize)) {
|
||||
w = self->area.width;
|
||||
h = self->area.height;
|
||||
}
|
||||
}
|
||||
|
||||
if (x == self->area.x && y == self->area.y && w == self->area.width &&
|
||||
h == self->area.height)
|
||||
return; /* no change */
|
||||
|
|
Loading…
Reference in a new issue