Bug 512767 - Track mouse effect is stuttery when pointer is static
Summary: Track mouse effect is stuttery when pointer is static
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: effects-various (other bugs)
Version First Reported In: 6.5.3
Platform: Other Linux
: NOR minor
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
: 509733 (view as bug list)
Depends on:
Blocks:
 
Reported: 2025-11-29 19:26 UTC by David de Cos
Modified: 2025-12-17 09:27 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David de Cos 2025-11-29 19:26:58 UTC
SUMMARY
Track mouse effect (partial circles spinning) is stuttery when the pointer is static. It only animates smoothly when you move the mouse.

STEPS TO REPRODUCE
1. Activate the "Track mouse" desktop effect (if you don't have it yet).
2. Trigger it without moving the mouse (in my case, by pressing Control+Meta). The spinning animation is very stuttery. 
3. Now move the mouse. The animation becomes smooth.

ADDITIONAL INFORMATION
- This has worked well up until recently, probably started with Plasma 6.5.
- I have checked this in three different computers.
- If you try to reproduce this bug but don't see it, try a few times. Sometimes, the first time I press Control+Meta, the animation is fine. But if you press and release two or three times, while moving the mouse, the stutter will appear.
Comment 1 David Edmundson 2025-11-29 22:45:10 UTC
*** Bug 509733 has been marked as a duplicate of this bug. ***
Comment 2 David Edmundson 2025-11-29 22:46:13 UTC
Can you confirm if scaling is at 100% or something else?
Comment 3 David de Cos 2025-11-29 22:58:43 UTC
Yes, scaling is at 100% in all 3 computers where I've seen this bug.
Comment 4 Bug Janitor Service 2025-12-02 08:44:56 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/8513
Comment 5 Bug Janitor Service 2025-12-02 08:56:58 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/8514
Comment 6 Vlad Zahorodnii 2025-12-02 13:39:53 UTC
Git commit 637410bacbe2a261f0e82efd846352d14612467d by Vlad Zahorodnii.
Committed on 02/12/2025 at 13:12.
Pushed by vladz into branch 'master'.

plugins/trackmouse: Fix stuttering

With the output layer changes in 6.5, repaints for the next frame can't
be scheduled in the pre paint stage anymore.

On the other hand, the track mouse effect relied on that behavior. As a
short term solution, this change moves the rotation transform update
step to the post paint stage.

M  +2    -2    src/plugins/trackmouse/trackmouse.cpp
M  +1    -1    src/plugins/trackmouse/trackmouse.h

https://invent.kde.org/plasma/kwin/-/commit/637410bacbe2a261f0e82efd846352d14612467d
Comment 7 Vlad Zahorodnii 2025-12-03 11:06:15 UTC
Git commit 72f288dc440282ded3e4fdf97b6ef68451500795 by Vlad Zahorodnii.
Committed on 03/12/2025 at 09:52.
Pushed by vladz into branch 'Plasma/6.5'.

plugins/trackmouse: Fix stuttering

With the output layer changes in 6.5, repaints for the next frame can't
be scheduled in the pre paint stage anymore.

On the other hand, the track mouse effect relied on that behavior. As a
short term solution, this change moves the rotation transform update
step to the post paint stage.
(cherry picked from commit 637410bacbe2a261f0e82efd846352d14612467d)

M  +2    -2    src/plugins/trackmouse/trackmouse.cpp
M  +1    -1    src/plugins/trackmouse/trackmouse.h

https://invent.kde.org/plasma/kwin/-/commit/72f288dc440282ded3e4fdf97b6ef68451500795
Comment 8 David de Cos 2025-12-17 09:27:21 UTC
I can confirm this fixes the issue, thank you very much.