diff --git a/src/inputpanelv1client.cpp b/src/inputpanelv1client.cpp index 0eec81fe0b..1e2ab9d9b6 100644 --- a/src/inputpanelv1client.cpp +++ b/src/inputpanelv1client.cpp @@ -69,7 +69,12 @@ void KWin::InputPanelV1Client::reposition() return; } - const QRect availableArea = workspace()->clientArea(MaximizeArea, m_output, desktop()); + QRect availableArea; + if (waylandServer()->isScreenLocked()) { + availableArea = m_output->geometry(); + } else { + availableArea = workspace()->clientArea(MaximizeArea, m_output, desktop()); + } QRect geo(availableArea.topLeft(), panelSize); geo.translate((availableArea.width() - panelSize.width())/2, availableArea.height() - panelSize.height()); updateGeometry(geo);