diff --git a/scene.cpp b/scene.cpp index 8a903e8d62..a25dc8ddef 100644 --- a/scene.cpp +++ b/scene.cpp @@ -609,7 +609,7 @@ void Scene::finalPaintWindow(EffectWindowImpl* w, int mask, QRegion region, Wind // will be eventually called from drawWindow() void Scene::finalDrawWindow(EffectWindowImpl* w, int mask, QRegion region, WindowPaintData& data) { - if (waylandServer() && waylandServer()->isScreenLocked() && !w->window()->isLockScreen()) { + if (waylandServer() && waylandServer()->isScreenLocked() && !w->window()->isLockScreen() && !w->window()->isInputMethod()) { return; } w->sceneWindow()->performPaint(mask, region, data);