Fixed GIMP-1.1 (and other applications) windows dissappearing magically

svn path=/trunk/kdebase/kwin/; revision=66379
This commit is contained in:
Matthias Ettrich 2000-10-04 15:19:44 +00:00
parent 41aa62711e
commit cceeee466f

View file

@ -427,19 +427,24 @@ bool Workspace::workspaceEvent( XEvent * e )
// race conditions
c = findClientWidthId( e->xunmap.window );
if ( c )
return c->windowEvent( e );
(void) c->windowEvent( e );
}
if ( e->xunmap.event != e->xunmap.window ) // hide wm typical event from Qt
return TRUE;
return ( e->xunmap.event != e->xunmap.window ); // hide wm typical event from Qt
case MapNotify:
if ( e->xunmap.event == root ) {
if ( e->xmap.event == root ) {
// keep track of map/unmap for own own windows to avoid
// race conditions
c = findClientWidthId( e->xmap.window );
if ( c )
return c->windowEvent( e );
(void) c->windowEvent( e );
return TRUE;
}
return ( e->xmap.event != e->xmap.window ); // hide wm typical event from Qt
case ReparentNotify:
c = findClient( e->xreparent.window );
if ( c )
@ -456,7 +461,7 @@ bool Workspace::workspaceEvent( XEvent * e )
kwin_updateTime();
c = findClient( e->xmaprequest.window );
if ( !c ) {
if ( e->xmaprequest.parent == root ) {
if ( e->xmaprequest.parent ) { // == root ) { //###TODO store rpeviously destroyed client ids
if ( addSystemTrayWin( e->xmaprequest.window ) )
return TRUE;
c = clientFactory( e->xmaprequest.window );
@ -2359,10 +2364,8 @@ void Workspace::slotWindowOperations()
*/
void Workspace::slotWindowClose()
{
if ( tab_box->isVisible() ) {
qDebug("ARGGGLLLLLLLLL");
if ( tab_box->isVisible() )
return;
}
performWindowOperation( popup_client, Options::CloseOp );
}