summaryrefslogtreecommitdiff
path: root/src/Window.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Window.cc')
-rw-r--r--src/Window.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Window.cc b/src/Window.cc
index 0a845279..a4186880 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -1541,9 +1541,6 @@ void BlackboxWindow::setWorkspace(unsigned int n) {
void BlackboxWindow::shade(void) {
- if (! (decorations & Decor_Titlebar))
- return;
-
if (flags.shaded) {
XResizeWindow(blackbox->getXDisplay(), frame.window,
frame.inside_w, frame.inside_h);
@@ -1557,6 +1554,9 @@ void BlackboxWindow::shade(void) {
frame.rect.setHeight(client.rect.height() + frame.margin.top +
frame.margin.bottom);
} else {
+ if (! (decorations & Decor_Titlebar))
+ return;
+
XResizeWindow(blackbox->getXDisplay(), frame.window,
frame.inside_w, frame.title_h);
flags.shaded = True;
@@ -2741,6 +2741,11 @@ void BlackboxWindow::changeBlackboxHints(BlackboxHints *net) {
break;
}
+
+ // we can not be shaded if we lack a titlebar
+ if (flags.shaded && ! (decorations & Decor_Titlebar))
+ shade();
+
if (frame.window) {
XMapSubwindows(blackbox->getXDisplay(), frame.window);
XMapWindow(blackbox->getXDisplay(), frame.window);