author | llornkcor <llornkcor> | 2002-10-20 23:00:49 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-10-20 23:00:49 (UTC) |
commit | 8bbd3bca858939b15b8775b4811149b8d83bb6cc (patch) (side-by-side diff) | |
tree | 3ec2f82cf31c49debdf46f21746c71c0d69ec1db | |
parent | 706b3e155ad713f388606b4ae15c70a2be4c2294 (diff) | |
download | opie-8bbd3bca858939b15b8775b4811149b8d83bb6cc.zip opie-8bbd3bca858939b15b8775b4811149b8d83bb6cc.tar.gz opie-8bbd3bca858939b15b8775b4811149b8d83bb6cc.tar.bz2 |
better implementation of F11 menu handling
-rw-r--r-- | core/launcher/desktop.cpp | 23 | ||||
-rw-r--r-- | core/launcher/desktop.h | 1 |
2 files changed, 20 insertions, 4 deletions
diff --git a/core/launcher/desktop.cpp b/core/launcher/desktop.cpp index 9863187..387650b 100644 --- a/core/launcher/desktop.cpp +++ b/core/launcher/desktop.cpp @@ -477,8 +477,8 @@ bool DesktopApplication::qwsEventFilter( QWSEvent *e ) } // menu key now opens application menu/toolbar - if ( ke->simpleData.keycode == Key_F11 ) { - if ( press ) emit menu(); - return TRUE; - } +// if ( ke->simpleData.keycode == Key_F11 ) { +// if ( press ) emit menu(); +// return TRUE; +// } if ( ke->simpleData.keycode == Key_F12 ) { @@ -1048,2 +1048,17 @@ void Desktop::soundAlarm() } +bool Desktop::eventFilter( QObject *, QEvent *ev ) +{ + if ( ev->type() == QEvent::KeyPress ) { + QKeyEvent *ke = (QKeyEvent *)ev; + if ( ke->key() == Qt::Key_F11 ) { // menu key + QWidget *active = qApp->activeWindow(); + if ( active && active->isPopup() ) { + active->close(); + } + raiseMenu(); + return TRUE; + } + } + return FALSE; +} diff --git a/core/launcher/desktop.h b/core/launcher/desktop.h index 5de85f4..04c2f61 100644 --- a/core/launcher/desktop.h +++ b/core/launcher/desktop.h @@ -126,4 +126,5 @@ protected: void styleChange( QStyle & ); void timerEvent( QTimerEvent *e ); + bool eventFilter( QObject *, QEvent * ); QWidget *bg; |