allow a user to set "undecorated" on a window without decorations
if not based on window type, the app may decide to have decorations again sometime. this was not always legal but chromium has made it so.
This commit is contained in:
parent
c36b89ba12
commit
6d95e2441a
1 changed files with 7 additions and 5 deletions
|
@ -1723,6 +1723,13 @@ void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* If the client has no decor from its type (which never changes) then
|
||||||
|
don't allow the user to "undecorate" the window. Otherwise, allow them
|
||||||
|
to, even if there are motif hints removing the decor, because those
|
||||||
|
may change these days (e.g. chromium) */
|
||||||
|
if (self->decorations == 0)
|
||||||
|
self->functions &= ~OB_CLIENT_FUNC_UNDECORATE;
|
||||||
|
|
||||||
/* Mwm Hints are applied subtractively to what has already been chosen for
|
/* Mwm Hints are applied subtractively to what has already been chosen for
|
||||||
decor and functionality */
|
decor and functionality */
|
||||||
if (self->mwmhints.flags & OB_MWM_FLAG_DECORATIONS) {
|
if (self->mwmhints.flags & OB_MWM_FLAG_DECORATIONS) {
|
||||||
|
@ -1782,11 +1789,6 @@ void client_setup_decor_and_functions(ObClient *self, gboolean reconfig)
|
||||||
self->decorations &= ~(OB_FRAME_DECOR_HANDLE | OB_FRAME_DECOR_GRIPS);
|
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)
|
|
||||||
self->functions &= ~OB_CLIENT_FUNC_UNDECORATE;
|
|
||||||
|
|
||||||
/* finally, the user can have requested no decorations, which overrides
|
/* finally, the user can have requested no decorations, which overrides
|
||||||
everything (but doesnt give it a border if it doesnt have one) */
|
everything (but doesnt give it a border if it doesnt have one) */
|
||||||
if (self->undecorated)
|
if (self->undecorated)
|
||||||
|
|
Loading…
Reference in a new issue