diff --git a/folderrequester.cpp b/folderrequester.cpp index d6f180a33..73c785213 100644 --- a/folderrequester.cpp +++ b/folderrequester.cpp @@ -58,6 +58,7 @@ FolderRequester::FolderRequester( QWidget *parent, KMFolderTree *tree ) setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::Fixed ) ); + setFocusPolicy( QWidget::StrongFocus ); } //----------------------------------------------------------------------------- @@ -100,6 +101,15 @@ void FolderRequester::setFolder( const QString &idString ) setFolder( kmkernel->findFolderById( idString ) ); } +//----------------------------------------------------------------------------- +void FolderRequester::keyPressEvent( QKeyEvent * e ) +{ + if ( e->key() == Qt::Key_Space ) + slotOpenDialog(); + else + e->ignore(); +} + } // namespace KMail #include "folderrequester.moc" diff --git a/folderrequester.h b/folderrequester.h index e39a8b7fc..40a98263c 100644 --- a/folderrequester.h +++ b/folderrequester.h @@ -90,6 +90,10 @@ namespace KMail { /** Emitted when the folder changed */ void folderChanged( KMFolder* ); + protected: + /** Capture space key to open the dialog */ + virtual void keyPressEvent( QKeyEvent * e ); + protected: KLineEdit* edit; KMFolder* mFolder;