diff options
| author | Dana Jansens <danakj@orodu.net> | 2008-01-15 22:00:21 -0500 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2008-01-15 22:00:21 -0500 |
| commit | 07994cb2dcafe33db99da5f7234caefdc0baa809 (patch) | |
| tree | baf718d641d15aa8dc2721fc52db1d84c2a6d1eb /openbox | |
| parent | d3e9fc8941831477b50678b9bd676e29f4bed1a7 (diff) | |
when you close a window that you already tried to close and its not responding to pings, then do a kill the next time
Diffstat (limited to 'openbox')
| -rw-r--r-- | openbox/client.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/openbox/client.c b/openbox/client.c index a4d045dc..517482c7 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -3195,20 +3195,16 @@ void client_close(ObClient *self) if (!self->delete_window) client_kill(self); - /* - XXX: itd be cool to do timeouts and shit here for killing the client's - process off - like... if the window is around after 5 seconds, then the close button - turns a nice red, and if this function is called again, the client is - explicitly killed. - */ - - PROP_MSG_TO(self->window, self->window, wm_protocols, - prop_atoms.wm_delete_window, event_curtime, 0, 0, 0, - NoEventMask); + if (self->not_responding) + client_kill(self); + else { + PROP_MSG_TO(self->window, self->window, wm_protocols, + prop_atoms.wm_delete_window, event_curtime, 0, 0, 0, + NoEventMask); - if (self->ping) - ping_start(self, client_ping_event); + if (self->ping) + ping_start(self, client_ping_event); + } } void client_kill(ObClient *self) |
