diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-01-07 05:48:12 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-01-07 05:48:12 +0000 |
| commit | dc532b7661e0d9bc72c25b74fa987ce50f3f0b31 (patch) | |
| tree | 47d5282cd04ec3f8dbd1e2bf6d49f26ba60df759 | |
| parent | eccab56a6c06c9c2f5764d7913fd794961f60214 (diff) | |
change the unmanae ordeer around to have the callbacks fire last
| -rw-r--r-- | src/screen.cc | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/screen.cc b/src/screen.cc index 7f15b243..eddda8df 100644 --- a/src/screen.cc +++ b/src/screen.cc @@ -556,12 +556,6 @@ void OBScreen::unmanageWindow(OBClient *client) Openbox::instance->bindings()->grabButtons(false, client); - // remove from the stacking order - _stacking.remove(client); - - // unfocus the client - client->unfocus(); - // remove from the wm's map Openbox::instance->removeClient(client->window()); Openbox::instance->removeClient(frame->window()); @@ -592,8 +586,15 @@ void OBScreen::unmanageWindow(OBClient *client) delete client->frame; client->frame = 0; + // remove from the stacking order + _stacking.remove(client); + // remove from the screen's list clients.remove(client); + + // unfocus the client (calls the focus callbacks) + client->unfocus(); + delete client; // update the root properties |
