diff --git a/src/input.cpp b/src/input.cpp index 36a6292be0..ef70d0e981 100644 --- a/src/input.cpp +++ b/src/input.cpp @@ -282,6 +282,12 @@ public: if (!waylandServer()->isScreenLocked()) { return false; } + + auto client = qobject_cast(input()->findToplevel(event->globalPos())); + if (client && client->isLockScreen()) { + workspace()->activateClient(client); + } + auto seat = waylandServer()->seat(); seat->setTimestamp(event->timestamp()); if (event->type() == QEvent::MouseMove) {