Blob Blame History Raw
diff --git a/ksmserver/screenlocker/greeter/greeterapp.cpp b/ksmserver/screenlocker/greeter/greeterapp.cpp
index 8ac0de4..64f7b2c 100644
--- a/ksmserver/screenlocker/greeter/greeterapp.cpp
+++ b/ksmserver/screenlocker/greeter/greeterapp.cpp
@@ -418,8 +418,11 @@ bool UnlockApp::eventFilter(QObject *obj, QEvent *event)
             }
         }
         if (!saverVisible) {
-            shareEvent(event, qobject_cast<QDeclarativeView*>(obj));
-            return false; // we don't care
+            QKeyEvent *ke = static_cast<QKeyEvent *>(event);
+            if (ke->key() != Qt::Key_Enter && ke->key() != Qt::Key_Return) {
+                shareEvent(event, qobject_cast<QDeclarativeView*>(obj));
+            }
+            return false;
         }
         ignoreNextEscape = bool(static_cast<QKeyEvent *>(event)->key() == Qt::Key_Escape);
         capsLocked();