Prevent crash when cancelling present windows when no window is highlighted.
Prevent the tab key from being added to the filter. BUG: 171951 svn path=/trunk/KDE/kdebase/workspace/; revision=866566
This commit is contained in:
parent
11bd92b381
commit
b7122a91b1
1 changed files with 8 additions and 1 deletions
|
@ -359,6 +359,8 @@ void PresentWindowsEffect::grabbedKeyboardEvent( QKeyEvent *e )
|
||||||
effects->activateWindow( m_highlightedWindow );
|
effects->activateWindow( m_highlightedWindow );
|
||||||
setActive( false );
|
setActive( false );
|
||||||
return;
|
return;
|
||||||
|
case Qt::Key_Tab:
|
||||||
|
return; // Nothing at the moment
|
||||||
default:
|
default:
|
||||||
if( !e->text().isEmpty() )
|
if( !e->text().isEmpty() )
|
||||||
{
|
{
|
||||||
|
@ -1133,8 +1135,13 @@ void PresentWindowsEffect::setActive( bool active )
|
||||||
{
|
{
|
||||||
// Fade in/out all windows
|
// Fade in/out all windows
|
||||||
foreach( EffectWindow *w, effects->stackingOrder() )
|
foreach( EffectWindow *w, effects->stackingOrder() )
|
||||||
|
{
|
||||||
// TODO: w->isOnCurrentDesktop(); doesn't seem to be updated immediately
|
// TODO: w->isOnCurrentDesktop(); doesn't seem to be updated immediately
|
||||||
|
if( m_highlightedWindow )
|
||||||
m_windowData[w].visible = ( w->desktop() == m_highlightedWindow->desktop() || w->isOnAllDesktops() );
|
m_windowData[w].visible = ( w->desktop() == m_highlightedWindow->desktop() || w->isOnAllDesktops() );
|
||||||
|
else // Only called when cancelling the effect, so isOnCurrentDesktop() is fine
|
||||||
|
m_windowData[w].visible = w->isOnCurrentDesktop();
|
||||||
|
}
|
||||||
|
|
||||||
// Move all windows back to their original position
|
// Move all windows back to their original position
|
||||||
foreach( EffectWindow *w, m_motionManager.managedWindows() )
|
foreach( EffectWindow *w, m_motionManager.managedWindows() )
|
||||||
|
|
Loading…
Reference in a new issue