diff --git a/src/managers/PointerManager.cpp b/src/managers/PointerManager.cpp index 52efab0b95d..5d2672f33e5 100644 --- a/src/managers/PointerManager.cpp +++ b/src/managers/PointerManager.cpp @@ -929,7 +929,10 @@ void CPointerManager::attachPointer(SP pointer) { bool shouldSkip = false; if (!g_pSeatManager->m_mouse.expired() && g_pInputManager->isLocked()) { auto PMONITOR = Desktop::focusState()->monitor().get(); - shouldSkip = PMONITOR && PMONITOR->shouldSkipScheduleFrameOnMouseEvent(); + if (PMONITOR && PMONITOR->shouldSkipScheduleFrameOnMouseEvent()) { + auto fsWindow = PMONITOR->m_activeWorkspace->getFullscreenWindow(); + shouldSkip = fsWindow && fsWindow->m_isX11; + } } g_pSeatManager->m_isPointerFrameSkipped = shouldSkip; if (!g_pSeatManager->m_isPointerFrameSkipped)