[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/kwin
From: Chani Armitage <chanika () gmail ! com>
Date: 2011-01-12 18:09:00
Message-ID: 20110112180900.39BB4AC8B3 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1214045 by chani:
improve stack & focuschain activity checks
BUG: 262730
M +1 -1 layers.cpp
M +2 -2 tabbox.cpp
M +1 -1 useractions.cpp
M +7 -7 workspace.cpp
--- trunk/KDE/kdebase/workspace/kwin/layers.cpp #1214044:1214045
@@ -263,7 +263,7 @@
i >= 0;
--i )
{
- if( list.at( i )->isOnDesktop( desktop ) && list.at( i )->isShown( false ))
+ if( list.at( i )->isOnDesktop( desktop ) && list.at( i )->isShown( false ) \
&& list.at(i)->isOnCurrentActivity()) {
if( screen != -1 && list.at( i )->screen() != screen )
continue;
--- trunk/KDE/kdebase/workspace/kwin/tabbox.cpp #1214044:1214045
@@ -977,7 +977,7 @@
--i )
{
Client* it = stacking_order.at( i );
- if ( it->isOnCurrentDesktop() && !it->isSpecialWindow()
+ if ( it->isOnCurrentActivity() && it->isOnCurrentDesktop() && \
!it->isSpecialWindow() && it->isShown( false ) && it->wantsTabFocus()
&& !it->keepAbove() && !it->keepBelow())
{
@@ -1010,7 +1010,7 @@
}
} while (nc && nc != c &&
(( !options_traverse_all && !nc->isOnDesktop(currentDesktop())) ||
- nc->isMinimized() || !nc->wantsTabFocus() || nc->keepAbove() || \
nc->keepBelow() ) ); + nc->isMinimized() || !nc->wantsTabFocus() || \
nc->keepAbove() || nc->keepBelow() || !nc->isOnCurrentActivity() ) ); if (nc)
{
if (c && c != nc)
--- trunk/KDE/kdebase/workspace/kwin/useractions.cpp #1214044:1214045
@@ -1619,7 +1619,7 @@
for( QList<Client *>::Iterator i = clist.begin(); i != clist.end(); ++i )
{
if( (*i)->wantsTabFocus() && *i != c &&
- (*i)->desktop() == d && ! (*i)->isMinimized() )
+ (*i)->desktop() == d && ! (*i)->isMinimized() && \
(*i)->isOnCurrentActivity() ) {
// Centre of the other window
QPoint other( (*i)->pos().x() + (*i)->geometry().width() / 2,
--- trunk/KDE/kdebase/workspace/kwin/workspace.cpp #1214044:1214045
@@ -1459,7 +1459,7 @@
for( ClientList::ConstIterator it = stacking_order.constBegin();
it != stacking_order.constEnd();
++it )
- if( !(*it)->isOnDesktop( new_desktop ) && (*it) != movingClient )
+ if( !(*it)->isOnDesktop( new_desktop ) && (*it) != movingClient && \
(*it)->isOnCurrentActivity() ) {
if( (*it)->isShown( true ) && (*it)->isOnDesktop( old_desktop ))
obs_wins.create( *it );
@@ -1483,7 +1483,7 @@
}
for( int i = stacking_order.size() - 1; i >= 0 ; --i )
- if( stacking_order.at( i )->isOnDesktop( new_desktop ))
+ if( stacking_order.at( i )->isOnDesktop( new_desktop ) && \
stacking_order.at( i )->isOnCurrentActivity()) stacking_order.at( i \
)->updateVisibility();
--block_showing_desktop;
@@ -1506,7 +1506,7 @@
for( int i = focus_chain[currentDesktop()].size() - 1; i >= 0; --i )
{
if( focus_chain[currentDesktop()].at( i )->isShown( false ) &&
- focus_chain[currentDesktop()].at( i )->isOnCurrentDesktop() )
+ focus_chain[currentDesktop()].at( i )->isOnCurrentActivity() )
{
c = focus_chain[currentDesktop()].at( i );
break;
@@ -1591,7 +1591,7 @@
for( ClientList::ConstIterator it = stacking_order.constBegin();
it != stacking_order.constEnd();
++it )
- if( !(*it)->isOnActivity( new_activity ) && (*it) != movingClient )
+ if( !(*it)->isOnActivity( new_activity ) && (*it) != movingClient && \
(*it)->isOnCurrentDesktop()) {
if( (*it)->isShown( true ) && (*it)->isOnActivity( old_activity ))
obs_wins.create( *it );
@@ -1639,7 +1639,7 @@
for( int i = focus_chain[currentDesktop()].size() - 1; i >= 0; --i )
{
if( focus_chain[currentDesktop()].at( i )->isShown( false ) &&
- focus_chain[currentDesktop()].at( i )->isOnCurrentDesktop() )
+ focus_chain[currentDesktop()].at( i )->isOnCurrentActivity() )
{
c = focus_chain[currentDesktop()].at( i );
break;
@@ -1650,7 +1650,7 @@
// If "unreasonable focus policy" and active_client is on_all_desktops and
// under mouse (Hence == old_active_client), conserve focus.
// (Thanks to Volker Schatz <V.Schatz at thphys.uni-heidelberg.de>)
- else if( active_client && active_client->isShown( true ) && \
active_client->isOnCurrentDesktop() ) + else if( active_client && \
active_client->isShown( true ) && active_client->isOnCurrentDesktop() && \
active_client->isOnCurrentActivity() ) c = active_client;
if( c == NULL && !desktops.isEmpty() )
@@ -2933,7 +2933,7 @@
for( ClientList::ConstIterator it = cls.constBegin();
it != cls.constEnd();
++it )
- if( (*it)->isOnCurrentDesktop() && (*it)->isShown( true ) && \
!(*it)->isSpecialWindow() ) + if( (*it)->isOnCurrentActivity() && \
(*it)->isOnCurrentDesktop() && (*it)->isShown( true ) && \
!(*it)->isSpecialWindow() )
showing_desktop_clients.prepend( *it ); // Topmost first to reduce \
flicker
for( ClientList::ConstIterator it = showing_desktop_clients.constBegin();
it != showing_desktop_clients.constEnd();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic