aboutsummaryrefslogtreecommitdiff
path: root/src/Window.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Window.cc')
-rw-r--r--src/Window.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/Window.cc b/src/Window.cc
index 2ceb3d9..81d5059 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -423,13 +423,15 @@ void FluxboxWindow::init() {
423 m_workspace_number = m_screen.currentWorkspaceID(); 423 m_workspace_number = m_screen.currentWorkspaceID();
424 424
425 // set default decorations but don't apply them 425 // set default decorations but don't apply them
426 setDecorationMask(WindowState::getDecoMaskFromString(screen().defaultDeco()), 426 setDecorationMask(WindowState::getDecoMaskFromString(*screen().defaultDecoResource()),
427 false); 427 false);
428 428
429 functions.resize = functions.move = functions.iconify = functions.maximize 429 functions.resize = functions.move = functions.iconify = functions.maximize
430 = functions.close = functions.tabable = true; 430 = functions.close = functions.tabable = true;
431 431
432 updateMWMHintsFromClient(*m_client); 432 updateMWMHintsFromClient(*m_client);
433 join(screen().defaultDecoResource().modifiedSig(),
434 FbTk::MemFunIgnoreArgs(*this, &FluxboxWindow::decorationsChanged));
433 435
434 autoRaiseDelayChanged(*fluxbox.getAutoRaiseDelayResource()); 436 autoRaiseDelayChanged(*fluxbox.getAutoRaiseDelayResource());
435 join(fluxbox.getAutoRaiseDelayResource().modifiedSig(), FbTk::MemFun(*this, 437 join(fluxbox.getAutoRaiseDelayResource().modifiedSig(), FbTk::MemFun(*this,
@@ -1110,7 +1112,7 @@ void FluxboxWindow::updateMWMHintsFromClient(WinClient &client) {
1110 } 1112 }
1111 1113
1112 unsigned int mask = decorationMask(); 1114 unsigned int mask = decorationMask();
1113 mask &= WindowState::getDecoMaskFromString(screen().defaultDeco()); 1115 mask &= WindowState::getDecoMaskFromString(*screen().defaultDecoResource());
1114 setDecorationMask(mask, false); 1116 setDecorationMask(mask, false);
1115 1117
1116 // functions.tabable is ours, not special one 1118 // functions.tabable is ours, not special one
@@ -2660,6 +2662,13 @@ void FluxboxWindow::themeReconfigured() {
2660 sendConfigureNotify(); 2662 sendConfigureNotify();
2661} 2663}
2662 2664
2665void FluxboxWindow::decorationsChanged() {
2666 setDecorationMask(WindowState::getDecoMaskFromString(*screen().defaultDecoResource()),
2667 false);
2668 updateMWMHintsFromClient(*m_client);
2669 applyDecorations();
2670}
2671
2663void FluxboxWindow::workspaceAreaChanged(BScreen &screen) { 2672void FluxboxWindow::workspaceAreaChanged(BScreen &screen) {
2664 frame().applyState(); 2673 frame().applyState();
2665} 2674}