more sane "delete" and "transdelete" events (where missing in many
cases) svn path=/trunk/kdebase/kwin/; revision=68283
This commit is contained in:
parent
256797f94f
commit
cbfa5b50d1
1 changed files with 2 additions and 0 deletions
|
@ -880,6 +880,7 @@ bool Client::unmapNotify( XUnmapEvent& e )
|
||||||
XEvent ev;
|
XEvent ev;
|
||||||
if ( XCheckTypedWindowEvent (qt_xdisplay(), windowWrapper()->winId(),
|
if ( XCheckTypedWindowEvent (qt_xdisplay(), windowWrapper()->winId(),
|
||||||
DestroyNotify, &ev) ){
|
DestroyNotify, &ev) ){
|
||||||
|
Events::raise( isTransient() ? Events::TransDelete : Events::Delete );
|
||||||
workspace()->destroyClient( this );
|
workspace()->destroyClient( this );
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -1685,6 +1686,7 @@ void Client::closeWindow()
|
||||||
else {
|
else {
|
||||||
// client will not react on wm_delete_window. We have not choice
|
// client will not react on wm_delete_window. We have not choice
|
||||||
// but destroy his connection to the XServer.
|
// but destroy his connection to the XServer.
|
||||||
|
Events::raise( isTransient() ? Events::TransDelete : Events::Delete );
|
||||||
XKillClient(qt_xdisplay(), win );
|
XKillClient(qt_xdisplay(), win );
|
||||||
workspace()->destroyClient( this );
|
workspace()->destroyClient( this );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue