aboutsummaryrefslogtreecommitdiff
path: root/src/Window.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Window.cc')
-rw-r--r--src/Window.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/Window.cc b/src/Window.cc
index 369b480..756c358 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -291,7 +291,7 @@ FluxboxWindow::FluxboxWindow(WinClient &client):
291 m_parent(client.screen().rootWindow()), 291 m_parent(client.screen().rootWindow()),
292 m_resize_corner(RIGHTBOTTOM) { 292 m_resize_corner(RIGHTBOTTOM) {
293 293
294 m_theme.reconfigSig().attach(this); 294 join(m_theme.reconfigSig(), FbTk::MemFun(*this, &FluxboxWindow::themeReconfigured));
295 m_frame.frameExtentSig().attach(this); 295 m_frame.frameExtentSig().attach(this);
296 296
297 init(); 297 init();
@@ -2682,15 +2682,17 @@ void FluxboxWindow::setTitle(const std::string& title, Focusable &client) {
2682} 2682}
2683 2683
2684void FluxboxWindow::update(FbTk::Subject *subj) { 2684void FluxboxWindow::update(FbTk::Subject *subj) {
2685 if (subj == &m_theme.reconfigSig()) { 2685 if (m_initialized && subj == &m_frame.frameExtentSig()) {
2686 frame().applyDecorations();
2687 sendConfigureNotify();
2688 } else if (m_initialized && subj == &m_frame.frameExtentSig()) {
2689 Fluxbox::instance()->updateFrameExtents(*this); 2686 Fluxbox::instance()->updateFrameExtents(*this);
2690 sendConfigureNotify(); 2687 sendConfigureNotify();
2691 } 2688 }
2692} 2689}
2693 2690
2691void FluxboxWindow::themeReconfigured() {
2692 frame().applyDecorations();
2693 sendConfigureNotify();
2694}
2695
2694void FluxboxWindow::workspaceAreaChanged(BScreen &screen) { 2696void FluxboxWindow::workspaceAreaChanged(BScreen &screen) {
2695 frame().applyState(); 2697 frame().applyState();
2696} 2698}