diff --git a/client.cpp b/client.cpp index 726b2c97c1..e0a62cffb2 100644 --- a/client.cpp +++ b/client.cpp @@ -2223,10 +2223,12 @@ void Client::removeSyncSupport() setReadyForPainting(); return; } +#ifdef HAVE_XSYNC syncRequest.isPending = false; syncRequest.counter = syncRequest.alarm = None; delete syncRequest.timeout; delete syncRequest.failsafeTimeout; syncRequest.timeout = syncRequest.failsafeTimeout = NULL; +#endif } bool Client::wantsTabFocus() const diff --git a/composite.cpp b/composite.cpp index 6a10d3416d..7e7728deab 100644 --- a/composite.cpp +++ b/composite.cpp @@ -660,10 +660,10 @@ void Client::damageNotifyEvent(XDamageNotifyEvent* e) if (!ready_for_painting) { // avoid "setReadyForPainting()" function calling overhead if (syncRequest.counter == None) // cannot detect complete redraw, consider done now setReadyForPainting(); + } #else setReadyForPainting(); #endif - } Toplevel::damageNotifyEvent(e); } diff --git a/geometry.cpp b/geometry.cpp index fd70beb689..c73beb0a54 100644 --- a/geometry.cpp +++ b/geometry.cpp @@ -2657,8 +2657,10 @@ void Client::leaveMoveResize() move_resize_grab_window = None; workspace()->setClientIsMoving(0); moveResizeMode = false; +#ifdef HAVE_XSYNC delete syncRequest.timeout; syncRequest.timeout = NULL; +#endif #ifdef KWIN_BUILD_SCREENEDGES if (options->electricBorders() == Options::ElectricMoveOnly || options->electricBorderMaximize() || @@ -2739,8 +2741,10 @@ void Client::delayedMoveResize() void Client::handleMoveResize(int x, int y, int x_root, int y_root) { +#ifdef HAVE_XSYNC if (syncRequest.isPending && isResize()) return; // we're still waiting for the client or the timeout +#endif if ((mode == PositionCenter && !isMovableAcrossScreens()) || (mode != PositionCenter && (isShade() || !isResizable())))