summaryrefslogtreecommitdiff
path: root/src/screen.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/screen.cc')
-rw-r--r--src/screen.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/screen.cc b/src/screen.cc
index 65770556..f9485595 100644
--- a/src/screen.cc
+++ b/src/screen.cc
@@ -138,6 +138,11 @@ OBScreen::OBScreen(int screen)
// register this class as the event handler for the root window
Openbox::instance->registerHandler(_info->rootWindow(), this);
+
+ // call the python Startup callbacks
+ EventData *data = new_event_data(_number, 0, EventShutdown, 0);
+ Openbox::instance->bindings()->fireEvent(data);
+ Py_XDECREF((PyObject*)data);
}
@@ -151,6 +156,11 @@ OBScreen::~OBScreen()
while (!clients.empty())
unmanageWindow(clients.front());
+ // call the python Shutdown callbacks
+ EventData *data = new_event_data(_number, 0, EventShutdown, 0);
+ Openbox::instance->bindings()->fireEvent(data);
+ Py_XDECREF((PyObject*)data);
+
XDestroyWindow(otk::OBDisplay::display, _focuswindow);
XDestroyWindow(otk::OBDisplay::display, _supportwindow);