From a2c3696df5d156ffcd3cedddab2e1cb5070767b1 Mon Sep 17 00:00:00 2001 From: Matthias Ettrich Date: Thu, 5 Oct 2000 22:09:49 +0000 Subject: [PATCH] Removed startkde and exitkde events. They don't belong into kwin. I remember that I removed those already some time ago. Somebody keeps believing that KWin has something to do with a) KDE startup and b) KDE Exit, grmbl. This is not true, it's ksmserver who does this. Unfortunatly I cannot remove the "logout" keybindings due to the translations. It rather belongs into kdesktopbindings than kwinbindings. Please, guys, kwin is a *window* manager, not a desktop (seems like a neverending story...) svn path=/trunk/kdebase/kwin/; revision=66503 --- client.cpp | 19 +++++++- events.cpp | 6 --- events.h | 4 +- eventsrc | 122 -------------------------------------------------- workspace.cpp | 3 -- 5 files changed, 18 insertions(+), 136 deletions(-) diff --git a/client.cpp b/client.cpp index 6fca64ed0c..addcb3b198 100644 --- a/client.cpp +++ b/client.cpp @@ -309,6 +309,8 @@ void WindowWrapper::releaseWindow() } XRemoveFromSaveSet(qt_xdisplay(), win ); + qWarning("release window, give up select"); + XSelectInput( qt_xdisplay(), win, NoEventMask ); invalidateWindow(); } } @@ -827,6 +829,8 @@ bool Client::mapRequest( XMapRequestEvent& /* e */ ) bool Client::unmapNotify( XUnmapEvent& e ) { + qWarning("unmapNotify for window %ld", e.window); + if ( e.event != windowWrapper()->winId() && !e.send_event ) return TRUE; @@ -837,16 +841,27 @@ bool Client::unmapNotify( XUnmapEvent& e ) withdraw(); break; case NormalState: + qWarning("in normal state: %s", caption().latin1() ); if ( ( !mapped || !windowWrapper()->isVisibleTo( this )) && !e.send_event ) return TRUE; // this event was produced by us as well // maybe we will be destroyed soon. Check this first. + qWarning("do something"); XEvent ev; - if ( XCheckTypedWindowEvent (qt_xdisplay(), windowWrapper()->winId(), - DestroyNotify, &ev) ){ + if ( XCheckTypedWindowEvent (qt_xdisplay(), windowWrapper()->winId(), + DestroyNotify, &ev) ){ workspace()->destroyClient( this ); return TRUE; } + if ( XCheckTypedWindowEvent (qt_xdisplay(), windowWrapper()->winId(), + ReparentNotify, &ev) ){ + if ( ev.xreparent.window == windowWrapper()->window() && + ev.xreparent.parent != windowWrapper()->winId() ) { + qWarning("will miss window"); + invalidateWindow(); + } + } + qWarning("do withdraw"); // fall through case WithdrawnState: // however that has been possible.... withdraw(); diff --git a/events.cpp b/events.cpp index fb072bfc9a..dd65fda83e 100644 --- a/events.cpp +++ b/events.cpp @@ -68,12 +68,6 @@ void Events::raise( Event e ) case ResizeEnd: event = "resizeend"; break; - case StartKDE: - event = "startkde"; - break; - case ExitKDE: - event = "exitkde"; - break; } if ( !event ) diff --git a/events.h b/events.h index b41c95013f..aaeb1225b2 100644 --- a/events.h +++ b/events.h @@ -29,9 +29,7 @@ public: MoveStart, MoveEnd, ResizeStart, - ResizeEnd, - StartKDE, - ExitKDE + ResizeEnd }; static void raise( Event ); diff --git a/eventsrc b/eventsrc index ebcf42aee7..8c25fcb378 100644 --- a/eventsrc +++ b/eventsrc @@ -1810,125 +1810,3 @@ Comment[ta]=´Õ º¡ÇÃõ «Ç× Á¡üÈõ ÓÊó¾Ð Comment[uk]=Вікно закінчило змінювати розмір Comment[zh_CN.GB2312]=窗口完成改变大小 default_presentation=0 - -[startkde] -Name=Login -Name[bg]=Ëîãîí -Name[ca]=Connexió -Name[cs]=Přihlášení -Name[da]=Logpå -Name[de]=Anmelden -Name[eo]=Saluto -Name[es]=Entrada -Name[et]=Sisse logimine -Name[fi]=Kirjaudu sisään -Name[fr]=Début de session -Name[he]=תכרעמל הסינכ -Name[hr]=Prijava -Name[hu]=Bejelentkezés -Name[it]=Avvio -Name[ja]=ログイン -Name[nl]=Inloggen -Name[no]=Logginn -Name[no_NY]=Logg inn -Name[pl]=Zalogowanie -Name[ro]=Logare -Name[sl]=Prijava -Name[sv]=Logga in -Name[ta]=ÐÅì¸õ -Name[uk]=Реєстрація -Comment=KDE is Starting Up -Comment[bg]=KDE ñå Ñòàðòèðà -Comment[ca]=KDE està engegant -Comment[cs]=Spouští se prostředí KDE -Comment[da]=KDE er ved at starte -Comment[de]=KDE startet -Comment[el]=Το KDE ξεκινά -Comment[eo]=KDE estas lanĉata -Comment[es]=KDE está Arrancando -Comment[et]=KDE käivitub -Comment[fi]=KDE käynnistyy -Comment[fr]=KDE est en cours de démarrage -Comment[gl]=KDE está a Iniciarse -Comment[he]=לוחתיא ךילהתב KDE -Comment[hr]=KDE se podiže -Comment[hu]=Belépés a KDE-be -Comment[is]=KDE er að fara í gang -Comment[it]=Avvio di KDE -Comment[ja]=KDE起動中 -Comment[nl]=KDE is aan het opstarten -Comment[no]=KDE starter opp -Comment[no_NY]=KDE startar -Comment[pl]=Uruchomienie KDE -Comment[pt]=O KDE Está a Iniciar -Comment[pt_BR]=KDE está iniciando -Comment[ro]=KDE porneşte -Comment[sk]=KDE sa spúšťa -Comment[sl]=KDE se zaganja -Comment[sv]=KDE är under uppstart -Comment[ta]=KDE ÐÅí̸¢ÈÐ -Comment[uk]=Запуск KDE. -default_presentation=1 -default_sound=KDE_Startup.wav - -[exitkde] -Name=Logout -Name[ca]=Desconnexió -Name[cs]=Odhlášení -Name[da]=Logaf -Name[de]=Abmelden -Name[eo]=Adiaŭo -Name[es]=Salida -Name[et]=Väljalogimine -Name[fi]=Kirjaudu ulos -Name[fr]=Fin de session -Name[he]=תכרעמהמ האיצי -Name[hr]=Odjava -Name[hu]=Kijelentkezés -Name[is]=Útstimplun -Name[it]=Uscita -Name[ja]=ログアウト -Name[nl]=Uitloggen -Name[no]=Logg ut -Name[no_NY]=Logg ut -Name[pl]=Wylogowanie -Name[pt_BR]=Sair -Name[ro]=Ieşire -Name[sl]=Odjava -Name[sv]=Logga ut -Name[ta]=ÓÊò¾ø -Name[uk]=Кінець сеансу -Comment=KDE is Exiting -Comment[bg]=KDE ñå Ñïèðà -Comment[ca]=KDE està aturant -Comment[cs]=Ukončuje se prostředí KDE -Comment[da]=KDE er ved at afslutte -Comment[de]=KDE wird beendet -Comment[el]=Το KDE τεμρατίζει -Comment[eo]=KDE estas finata -Comment[es]=KDE está Terminando -Comment[et]=KDE lõpetab töö -Comment[fi]=KDE lopetetaan -Comment[fr]=KDE est en cours d'arrêt -Comment[gl]=KDE está Saíndo -Comment[he]=האיצי ךילהתב KDE -Comment[hr]=KDE se zatvara -Comment[hu]=Kilépés a KDE-ből -Comment[is]=KDE er að hætta keyrslu -Comment[it]=Uscita da KDE -Comment[ja]=KDEは動作中です -Comment[nl]=KDE is aan het afsluiten -Comment[no]=KDE avslutter -Comment[no_NY]=KDE avsluttar -Comment[pl]=Zakończenie KDE -Comment[pt]=O KDE Está a Sair -Comment[pt_BR]=KDE está saindo -Comment[ro]=KDE se termină -Comment[sk]=KDE sa ukončuje -Comment[sl]=KDE se kon~Muje -Comment[sv]=KDE är på väg att avslutas -Comment[ta]=KDE ¦ÅÇ¢§ÂÚ¸¢ÈÐ -Comment[uk]=Вихід KDE -default_presentation=1 -default_sound=KDE_Logout.wav - diff --git a/workspace.cpp b/workspace.cpp index e61f144e5c..0447464bae 100644 --- a/workspace.cpp +++ b/workspace.cpp @@ -213,7 +213,6 @@ Workspace::Workspace( bool restore ) keys (0), root (0) { - Events::raise(Events::StartKDE); root = qt_xrootwin(); default_colormap = DefaultColormap(qt_xdisplay(), qt_xscreen() ); installed_colormap = default_colormap; @@ -2222,8 +2221,6 @@ void Workspace::slotMouseEmulation() void Workspace::slotLogout() { - Events::raise(Events::ExitKDE); - kapp->requestShutDown(); }