[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.0/kdebase/workspace/kwin/effects
From: Rivo Laks <rivolaks () hot ! ee>
Date: 2008-01-27 12:32:24
Message-ID: 1201437144.024913.17638.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 767071 by rivol:
Backport r760808:
Elevate highlighted window when alt-tabbing.
M +25 -2 boxswitch.cpp
M +2 -0 boxswitch.h
--- branches/KDE/4.0/kdebase/workspace/kwin/effects/boxswitch.cpp #767070:767071
@@ -42,6 +42,7 @@
BoxSwitchEffect::BoxSwitchEffect()
: mActivated( 0 )
, mMode( 0 )
+ , selected_window( 0 )
, painting_desktop( 0 )
{
frame_margin = 10;
@@ -271,7 +272,7 @@
effects->addRepaint( windows.value( selected_window )->area );
selected_window->addRepaintFull();
}
- selected_window = effects->currentTabBoxWindow();
+ setSelectedWindow( effects->currentTabBoxWindow());
if( windows.contains( selected_window ))
effects->addRepaint( windows.value( selected_window )->area );
selected_window->addRepaintFull();
@@ -306,7 +307,7 @@
if( mMode == TabBoxWindowsMode )
{
original_windows = effects->currentTabBoxWindowList();
- selected_window = effects->currentTabBoxWindow();
+ setSelectedWindow( effects->currentTabBoxWindow());
}
else
{
@@ -356,6 +357,7 @@
delete i;
}
windows.clear();
+ setSelectedWindow( 0 );
}
else
{ // DesktopMode
@@ -367,6 +369,27 @@
frame_area = QRect();
}
+void BoxSwitchEffect::setSelectedWindow( EffectWindow* w )
+ {
+ if( selected_window )
+ {
+ effects->setElevatedWindow( selected_window, false );
+ }
+ selected_window = w;
+ if( w )
+ {
+ effects->setElevatedWindow( selected_window, true );
+ }
+ }
+
+void BoxSwitchEffect::windowClosed( EffectWindow* w )
+ {
+ if( w == selected_window )
+ {
+ setSelectedWindow( 0 );
+ }
+ }
+
void BoxSwitchEffect::moveResizeInputWindow( int x, int y, int width, int height )
{
XMoveWindow( display(), mInput, x, y );
--- branches/KDE/4.0/kdebase/workspace/kwin/effects/boxswitch.h #767070:767071
@@ -56,6 +56,7 @@
virtual void tabBoxAdded( int mode );
virtual void tabBoxClosed();
virtual void tabBoxUpdated();
+ virtual void windowClosed( EffectWindow* w );
private:
class ItemInfo;
void setActive();
@@ -63,6 +64,7 @@
void moveResizeInputWindow( int x, int y, int width, int height );
void calculateFrameSize();
void calculateItemSizes();
+ void setSelectedWindow( EffectWindow* w );
void paintFrame();
void paintHighlight( QRect area );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic