Track change of global shortcuts for tabbox. Required for the tabbox to work correctly when a shortcut is changed.

BUG: 163732

svn path=/trunk/KDE/kdebase/workspace/; revision=972533
This commit is contained in:
Martin Gräßlin 2009-05-25 08:35:48 +00:00
parent ccd04606cc
commit 0c91716572
3 changed files with 55 additions and 0 deletions

View file

@ -1193,6 +1193,36 @@ void Workspace::slotWalkBackThroughDesktopList()
}
}
void Workspace::slotWalkThroughDesktopsKeyChanged( const QKeySequence& seq )
{
cutWalkThroughDesktops = KShortcut( seq );
}
void Workspace::slotWalkBackThroughDesktopsKeyChanged( const QKeySequence& seq )
{
cutWalkThroughDesktopsReverse = KShortcut( seq );
}
void Workspace::slotWalkThroughDesktopListKeyChanged( const QKeySequence& seq )
{
cutWalkThroughDesktopList = KShortcut( seq );
}
void Workspace::slotWalkBackThroughDesktopListKeyChanged( const QKeySequence& seq )
{
cutWalkThroughDesktopListReverse = KShortcut( seq );
}
void Workspace::slotWalkThroughWindowsKeyChanged( const QKeySequence& seq )
{
cutWalkThroughWindows = KShortcut( seq );
}
void Workspace::slotWalkBackThroughWindowsKeyChanged( const QKeySequence& seq )
{
cutWalkThroughWindowsReverse = KShortcut( seq );
}
void Workspace::modalActionsSwitch( bool enabled )
{
QList<KActionCollection*> collections;

View file

@ -345,27 +345,45 @@ void Workspace::readShortcuts()
KAction *kaction = qobject_cast<KAction*>( keys->action("Walk Through Desktops") );
if ( kaction!=0 )
{
cutWalkThroughDesktops = kaction->globalShortcut();
connect( kaction, SIGNAL(globalShortcutChanged(QKeySequence)), this, SLOT(slotWalkThroughDesktopsKeyChanged(QKeySequence)));
}
kaction = qobject_cast<KAction*>( keys->action("Walk Through Desktops (Reverse)") );
if ( kaction!=0 )
{
cutWalkThroughDesktopsReverse = kaction->globalShortcut();
connect( kaction, SIGNAL(globalShortcutChanged(QKeySequence)), this, SLOT(slotWalkBackThroughDesktopsKeyChanged(QKeySequence)));
}
kaction = qobject_cast<KAction*>( keys->action("Walk Through Desktop List") );
if ( kaction!=0 )
{
cutWalkThroughDesktopList = kaction->globalShortcut();
connect( kaction, SIGNAL(globalShortcutChanged(QKeySequence)), this, SLOT(slotWalkThroughDesktopListKeyChanged(QKeySequence)));
}
kaction = qobject_cast<KAction*>( keys->action("Walk Through Desktop List (Reverse)") );
if ( kaction!=0 )
{
cutWalkThroughDesktopListReverse = kaction->globalShortcut();
connect( kaction, SIGNAL(globalShortcutChanged(QKeySequence)), this, SLOT(slotWalkBackThroughDesktopListKeyChanged(QKeySequence)));
}
kaction = qobject_cast<KAction*>( keys->action("Walk Through Windows") );
if ( kaction!=0 )
{
cutWalkThroughWindows = kaction->globalShortcut();
connect( kaction, SIGNAL(globalShortcutChanged(QKeySequence)), this, SLOT(slotWalkThroughWindowsKeyChanged(QKeySequence)));
}
kaction = qobject_cast<KAction*>( keys->action("Walk Through Windows (Reverse)") );
if ( kaction!=0 )
{
cutWalkThroughWindowsReverse = kaction->globalShortcut();
connect( kaction, SIGNAL(globalShortcutChanged(QKeySequence)), this, SLOT(slotWalkBackThroughWindowsKeyChanged(QKeySequence)));
}
discardPopup(); // so that it's recreated next time
}

View file

@ -577,6 +577,13 @@ class Workspace : public QObject, public KDecorationDefines
void slotWalkThroughWindows();
void slotWalkBackThroughWindows();
void slotWalkThroughDesktopsKeyChanged( const QKeySequence& seq );
void slotWalkBackThroughDesktopsKeyChanged( const QKeySequence& seq );
void slotWalkThroughDesktopListKeyChanged( const QKeySequence& seq );
void slotWalkBackThroughDesktopListKeyChanged( const QKeySequence& seq );
void slotWalkThroughWindowsKeyChanged( const QKeySequence& seq );
void slotWalkBackThroughWindowsKeyChanged( const QKeySequence& seq );
void slotWindowOperations();
void slotWindowClose();
void slotWindowMove();