From bd589d3adf742d4850dc049d53c8c8c81a57c564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Tue, 23 Sep 2008 15:44:54 +0000 Subject: [PATCH] Turn unredirect off when fullscreen is not on the active virtual desktop. svn path=/trunk/KDE/kdebase/workspace/; revision=863950 --- activation.cpp | 1 + layers.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/activation.cpp b/activation.cpp index 18bb9022e2..f1259fef78 100644 --- a/activation.cpp +++ b/activation.cpp @@ -884,6 +884,7 @@ void Client::setActive( bool act ) decoration->activeChange(); updateMouseGrab(); updateUrgency(); // demand attention again if it's still urgent + workspace()->checkUnredirect(); } void Client::startupIdChanged() diff --git a/layers.cpp b/layers.cpp index 7734fc2a27..a0564ea700 100644 --- a/layers.cpp +++ b/layers.cpp @@ -850,7 +850,7 @@ bool Client::isActiveFullScreen() const // only raise fullscreen above docks if it's the topmost window in unconstrained stacking order, // i.e. the window set to be topmost by the user (also includes transients of the fullscreen window) const Client* ac = workspace()->mostRecentlyActivatedClient(); // instead of activeClient() - avoids flicker - const Client* top = workspace()->topClientOnDesktop( desktop(), screen(), true, false ); + const Client* top = workspace()->topClientOnDesktop( workspace()->currentDesktop(), screen(), true, false ); return( isFullScreen() && ac != NULL && top != NULL // not needed, for xinerama && ( ac == this || this->group() == ac->group()) && ( top == this || this->group() == top->group()));