diff options
author | fluxgen <fluxgen> | 2003-08-12 12:21:42 (GMT) |
---|---|---|
committer | fluxgen <fluxgen> | 2003-08-12 12:21:42 (GMT) |
commit | 1f4944abb4c3c1076391412f61c1bb9579e73a12 (patch) | |
tree | d3377b6efdd3ba145cded54f706d6ec83fbde7f6 | |
parent | cb0621a6b6a9470abb507a9fe87bd3d90491d695 (diff) | |
download | fluxbox_lack-1f4944abb4c3c1076391412f61c1bb9579e73a12.zip fluxbox_lack-1f4944abb4c3c1076391412f61c1bb9579e73a12.tar.bz2 |
added shutdown variable to indicate that we are shutting down and dont need to listen to some signals
-rw-r--r-- | src/Screen.cc | 7 | ||||
-rw-r--r-- | src/Screen.hh | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/Screen.cc b/src/Screen.cc index e39dc1c..3396ccf 100644 --- a/src/Screen.cc +++ b/src/Screen.cc | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Screen.cc,v 1.217 2003/08/12 01:03:25 fluxgen Exp $ | 25 | // $Id: Screen.cc,v 1.218 2003/08/12 12:21:42 fluxgen Exp $ |
26 | 26 | ||
27 | 27 | ||
28 | #include "Screen.hh" | 28 | #include "Screen.hh" |
@@ -302,7 +302,8 @@ BScreen::BScreen(FbTk::ResourceManager &rm, | |||
302 | m_altname(altscreenname), | 302 | m_altname(altscreenname), |
303 | m_resource_manager(rm), | 303 | m_resource_manager(rm), |
304 | m_available_workspace_area(new Strut(0, 0, 0, 0)), | 304 | m_available_workspace_area(new Strut(0, 0, 0, 0)), |
305 | m_xinerama_headinfo(0) { | 305 | m_xinerama_headinfo(0), |
306 | m_shutdown(false) { | ||
306 | 307 | ||
307 | Display *disp = FbTk::App::instance()->display(); | 308 | Display *disp = FbTk::App::instance()->display(); |
308 | 309 | ||
@@ -2099,7 +2100,7 @@ void BScreen::shutdown() { | |||
2099 | Display *disp = FbTk::App::instance()->display(); | 2100 | Display *disp = FbTk::App::instance()->display(); |
2100 | rootWindow().setEventMask(NoEventMask); | 2101 | rootWindow().setEventMask(NoEventMask); |
2101 | XSync(disp, False); | 2102 | XSync(disp, False); |
2102 | 2103 | m_shutdown = true; | |
2103 | for_each(m_workspaces_list.begin(), | 2104 | for_each(m_workspaces_list.begin(), |
2104 | m_workspaces_list.end(), | 2105 | m_workspaces_list.end(), |
2105 | mem_fun(&Workspace::shutdown)); | 2106 | mem_fun(&Workspace::shutdown)); |
diff --git a/src/Screen.hh b/src/Screen.hh index 2eacfa2..0f359cb 100644 --- a/src/Screen.hh +++ b/src/Screen.hh | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Screen.hh,v 1.120 2003/08/12 00:27:13 fluxgen Exp $ | 25 | // $Id: Screen.hh,v 1.121 2003/08/12 12:20:48 fluxgen Exp $ |
26 | 26 | ||
27 | #ifndef SCREEN_HH | 27 | #ifndef SCREEN_HH |
28 | #define SCREEN_HH | 28 | #define SCREEN_HH |
@@ -318,6 +318,7 @@ public: | |||
318 | void addConfigMenu(const char *label, FbTk::Menu &menu); | 318 | void addConfigMenu(const char *label, FbTk::Menu &menu); |
319 | void removeConfigMenu(FbTk::Menu &menu); | 319 | void removeConfigMenu(FbTk::Menu &menu); |
320 | 320 | ||
321 | bool isShuttingdown() const { return m_shutdown; } | ||
321 | enum { ROWSMARTPLACEMENT = 1, COLSMARTPLACEMENT, CASCADEPLACEMENT, | 322 | enum { ROWSMARTPLACEMENT = 1, COLSMARTPLACEMENT, CASCADEPLACEMENT, |
322 | UNDERMOUSEPLACEMENT, LEFTRIGHT, RIGHTLEFT, TOPBOTTOM, BOTTOMTOP }; | 323 | UNDERMOUSEPLACEMENT, LEFTRIGHT, RIGHTLEFT, TOPBOTTOM, BOTTOMTOP }; |
323 | 324 | ||
@@ -445,6 +446,7 @@ private: | |||
445 | } *m_xinerama_headinfo; | 446 | } *m_xinerama_headinfo; |
446 | 447 | ||
447 | std::list<Strut *> m_strutlist; | 448 | std::list<Strut *> m_strutlist; |
449 | bool m_shutdown; | ||
448 | }; | 450 | }; |
449 | 451 | ||
450 | 452 | ||