Hello, I suffer from Essential tremor. My hand is trembling slightly (involuntarily).
In 5.25, something subtly changed about how the screen edge is triggered - since then, I cannot use the desktop grid effect anymore.
Instead of triggering the overview, it triggers it, and then when my mouse cursor moves slightly, seemingly immediately registers the screen edge trigger again, reverting the overview effect. Sometimes multiple times, leading to a flickering between desktop grid and regular desktop.
This was not the case previously; It would be great if you could restore the behaviour from 5.24, where this problem was not present for me.
KDE Plasma Version: 5.25.3
KDE Frameworks Version: 5.96.0
Qt Version: 5.15.0
Can reproduce. The issue seems to be that when you move your cursor into the corner, Desktop Grid opens, but if you keep moving it in that same direction, it closes again. All WindowHeap-based effects appear to be affected, but other effcts are not.
Peek at Desktop is not a "fullscreen effect" like WindowHeap-based ones, but it is also affected. Though if you move a mouse careful and precise enough, you still can trigger any effect without immediately deactivating it. This is a general issue with how corners are currently implemented: KWin should require that a mouse pointer travels some distance from a corner before allowing to trigger it again.
And it's not just about the corners: screen edges are bugged too. Interestingly, they still work alongside an auto-hidden panel.
Screen edges always worked like this. You can increase "reactivation delay". Not sure what better options are. We could allow triggering the edge only once when it glows, but that can regress UX for others. Or we could measure the distance how much the cursor moved and allow triggering the edge only if the cursor moved half of the approach geometry, it has its own cons though.
Let's call it "basketball strategy": if you made it into a corner, you need to get it out of that corner's (invisible) zone before you can attempt "trowing" again.
And I don't see any problems with that, tbh.
> You can increase "reactivation delay".
Are you saying that I (and others in this bug report) somehow cranked this delay down to zero?
At the moment, the best option is to crank the reactivation delay, yes.
> you need to get it out of that corner's (invisible) zone before you can attempt "trowing" again
that's what I suggested with "triggering the edge only once when it glows", but one could argue that if user moves the cursor enough away from the edge while it still glows and moves back to the screen edge, the screen edge should trigger
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/2939
Git commit 9965ca7fc08da069589d015a78296941745e0f7d by Nate Graham, on behalf of Marco Martin.
Committed on 13/09/2022 at 17:26.
Pushed by ngraham into branch 'master'.
Reset the count while the user keeps moving the mouse
re-trigger the edge *only* if the user keeps the mouse still for at
least edges()->reActivationThreshold() - edges()->timeThreshold()
so that the user has to actually keep moving.
if the user keeps moving the cursor in the direction of the edge, it
wion't continuously retrigger it
M +2 -0 src/screenedge.cpp