aboutsummaryrefslogtreecommitdiff
path: root/src/fluxbox.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/fluxbox.cc')
-rw-r--r--src/fluxbox.cc22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/fluxbox.cc b/src/fluxbox.cc
index 9e62ac3..acbb55d 100644
--- a/src/fluxbox.cc
+++ b/src/fluxbox.cc
@@ -453,14 +453,16 @@ void Fluxbox::initScreen(BScreen *screen) {
453 screen->initWindows(); 453 screen->initWindows();
454 454
455 // attach screen signals to this 455 // attach screen signals to this
456 screen->currentWorkspaceSig().attach(this);
457 screen->focusedWindowSig().attach(this); 456 screen->focusedWindowSig().attach(this);
458 screen->workspaceNamesSig().attach(this); 457 screen->workspaceNamesSig().attach(this);
459 screen->workspaceAreaSig().attach(this); 458 screen->workspaceAreaSig().attach(this);
460 screen->clientListSig().attach(this); 459 screen->clientListSig().attach(this);
461 460
462 join( screen->workspaceCountSig(), 461 join(screen->currentWorkspaceSig(),
463 FbTk::MemFun( *this, &Fluxbox::workspaceCountChanged ) ); 462 FbTk::MemFun(*this, &Fluxbox::workspaceChanged));
463
464 join(screen->workspaceCountSig(),
465 FbTk::MemFun(*this, &Fluxbox::workspaceCountChanged));
464 466
465 // initiate atomhandler for screen specific stuff 467 // initiate atomhandler for screen specific stuff
466 for (AtomHandlerContainerIt it= m_atomhandler.begin(); 468 for (AtomHandlerContainerIt it= m_atomhandler.begin();
@@ -1106,12 +1108,6 @@ void Fluxbox::update(FbTk::Subject *changedsub) {
1106 if ((*it).first->update()) 1108 if ((*it).first->update())
1107 (*it).first->updateWorkspaceNames(screen); 1109 (*it).first->updateWorkspaceNames(screen);
1108 } 1110 }
1109 } else if ((&(screen.currentWorkspaceSig())) == changedsub) {
1110 for (AtomHandlerContainerIt it= m_atomhandler.begin();
1111 it != m_atomhandler.end(); ++it) {
1112 if ((*it).first->update())
1113 (*it).first->updateCurrentWorkspace(screen);
1114 }
1115 } else if ((&(screen.focusedWindowSig())) == changedsub) { 1111 } else if ((&(screen.focusedWindowSig())) == changedsub) {
1116 for (AtomHandlerContainerIt it= m_atomhandler.begin(); 1112 for (AtomHandlerContainerIt it= m_atomhandler.begin();
1117 it != m_atomhandler.end(); it++) { 1113 it != m_atomhandler.end(); it++) {
@@ -1526,3 +1522,11 @@ void Fluxbox::workspaceCountChanged( BScreen& screen ) {
1526 (*it).first->updateWorkspaceCount(screen); 1522 (*it).first->updateWorkspaceCount(screen);
1527 } 1523 }
1528} 1524}
1525
1526void Fluxbox::workspaceChanged( BScreen& screen ) {
1527 for (AtomHandlerContainerIt it= m_atomhandler.begin();
1528 it != m_atomhandler.end(); ++it) {
1529 if ((*it).first->update())
1530 (*it).first->updateCurrentWorkspace(screen);
1531 }
1532}