Bug 489892 - Triangle filter for multi-window thumbnail popup is not working properly, causing popup to close or switch to thumbnails of another app too eagerly
Summary: Triangle filter for multi-window thumbnail popup is not working properly, cau...
Status: CONFIRMED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Task Manager and Icons-Only Task Manager widgets (show other bugs)
Version: 5.27.5
Platform: Debian stable Linux
: NOR normal
Target Milestone: 1.0
Assignee: Bharadwaj Raju
URL:
Keywords: regression, usability
Depends on:
Blocks:
 
Reported: 2024-07-07 20:47 UTC by Alex
Modified: 2024-08-07 18:28 UTC (History)
5 users (show)

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


Attachments
Example (163.96 KB, image/png)
2024-07-27 15:31 UTC, Alex
Details
A diagram of the triangle mouse filter as it works currently. (6.14 KB, image/png)
2024-08-02 07:17 UTC, Bharadwaj Raju
Details
Screen recording (234.37 KB, video/webm)
2024-08-07 17:56 UTC, Nate Graham
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex 2024-07-07 20:47:36 UTC
SUMMARY

When using the icons only taskbar with grouped windows, the previews are very sensitive about the cursor leaving them for a moment either not being over any part of the taskbar or previews or touching other icons. I think it would improve the UX if the delay for switching to the previews of other programs would be higher.


STEPS TO REPRODUCE
1. Hover an icon on the icons-only-taskbar until the previews of the grouped windows appear.
2. Move with the cursor through the previews, accidentally leave the previews and touch another icon in the taskbar.
3. The previews are almost instantly hidden and you need to move the cursor back to the icon of the program you wanted to switch to, wait for the previews to appear, and then carefully select the right window without the cursor leaving the previews even for a split second.
Comment 1 cwo 2024-07-08 08:08:42 UTC
See also #469983 for another bug about previews changing too quickly - a delay in the right place might fix both.
Comment 2 Akseli Lahtinen 2024-07-12 12:41:05 UTC
Can you share more information of your system? System settings -> About this system -> click on "copy details" and paste it here. Thanks!
Comment 3 Akseli Lahtinen 2024-07-12 12:41:22 UTC
Setting as waitingforinfo
Comment 4 Bug Janitor Service 2024-07-27 03:46:10 UTC Comment hidden (spam)
Comment 5 Alex 2024-07-27 13:18:49 UTC
This time the stupid bot is actually right and I should have already posed it ... here is the info that is still missing:

Operating System: Debian GNU/Linux 12
KDE Plasma Version: 5.27.11
KDE Frameworks Version: 5.115.0
Qt Version: 5.15.13
Graphics Platform: X11
Comment 6 Nate Graham 2024-07-27 13:36:21 UTC
This exact issue was supposed to be resolved with the implementation of a triangle mouse filter in Plasma 5.27 (which I see you have); see Bug 358930.

Could you attach a screen recording that shows the exact problem you're encountering? Maybe the triangle filter is broken for you, for some reason.

Thanks!
Comment 7 Alex 2024-07-27 15:09:12 UTC
Can it be related to having a vertical panel? The graphic* linked in the other bug also seems to have the triangle the other way round than what my problem is, but maybe here it already flipped. It would be cool if there is any way to visualize the triangle.
I'm not even sure how I would construct the triangle when moving from the preview to the taskbar as the taskbar items are no children of the previews and the amazon solution seems to work by assuming a hierarchy.

* https://64.media.tumblr.com/53bdf2f4d5b0a7489743e2eaa140cd89/96541d7f363acfd3-e5/s500x750/8896d08ca510f3c71f98e61f729f8b82ea908614.png
Comment 8 Alex 2024-07-27 15:31:51 UTC
Created attachment 172047 [details]
Example

Here is an example for a cursor path that closes the previews as soon as the terminal icon is touched.
Comment 9 Nate Graham 2024-07-29 17:59:50 UTC
Ok, I can reproduce the issue now. It seems that the triangle filter is not behaving properly. Sometimes it works, but most of the time it doesn't. I can reproduce this on vertical as well as horizontal panels. Maybe the region calculation is off.
Comment 10 Bharadwaj Raju 2024-08-02 07:17:21 UTC
Created attachment 172202 [details]
A diagram of the triangle mouse filter as it works currently.

Can reproduce. But right now the triangle mouse filter is designed for this path to happen, i.e. it prevents switching to another task while you're moving your mouse from the initial point to the opened tooltip, but the reverse where you move your mouse *towards* the task "from above" as it were is supposed to be an instant switch, so that people have a way to switch tasks once a tooltip is opened without needing to move their mouse through an invisible circuitous route. See attachment.

We could add a delay, but then the entire point of all the complexity of the triangle filter in the first place was to avoid delays...
Comment 11 Nate Graham 2024-08-06 17:04:57 UTC
That diagram doesn't actually match what I'm seeing: a movement that's within the triangular "don't activate" zone is switching to thumbnails of a different task when the cursor passes over their icon.
Comment 12 Bharadwaj Raju 2024-08-06 17:08:09 UTC
(In reply to Nate Graham from comment #11)
> That diagram doesn't actually match what I'm seeing: a movement that's
> within the triangular "don't activate" zone is switching to thumbnails of a
> different task when the cursor passes over their icon.

I drew it a little bit far in the diagram, but the point is that if you move the mouse so that it enters another task "from above", it is designed to cause a switch even if the mouse lands in an area that would have been blocked by the filter otherwise. The intent is fast switching, so you can just dip your cursor from a tooltip into another task to switch instantly, but spurious moves in the task to tooltip direction are still filtered.
Comment 13 Nate Graham 2024-08-06 19:31:29 UTC
No, it enters the other task from the side, not from above.
Comment 14 Bharadwaj Raju 2024-08-06 19:34:02 UTC
(In reply to Nate Graham from comment #13)
> No, it enters the other task from the side, not from above.

"From above" is used in the sense of "from the direction where tooltips are"
Comment 15 Nate Graham 2024-08-06 19:35:24 UTC
That's correct. I know you know I use a vertical panel, but I was using terminology relevant to a horizontal panel, which the diagram depicted.
Comment 16 Bharadwaj Raju 2024-08-06 19:43:38 UTC
Maybe we're not talking about the same behavior then. Could you add a screen recording?
Comment 17 Nate Graham 2024-08-07 17:56:26 UTC
Created attachment 172376 [details]
Screen recording

Sure, here you go.
Comment 18 Bharadwaj Raju 2024-08-07 18:01:52 UTC
Got it, can reproduce. That's an issue. It seems to be based on where the cursor is when the tooltip opens, since the triangle filter starts from the point where the mouse was at the time of tooltip opening. I thought I put in enough mitigations against this through the secondary point calculation, but apparently not... I'll look into it when I get time.

But I'm not sure this is the same issue Alex is reporting. They're different mechanisms. Alex's issue as far as I can tell is about what happens when, once you've exited the filter area into the tooltip, what happens when your cursor happens to graze another task.
Comment 19 Alex 2024-08-07 18:28:53 UTC
I think my problem is not covered by the current filter even when working correctly, if I understand the filter the right way.

Currently it avoids, if I understand it correctly, that moving from an application icon to a preview switches to previews of another application when the mouse crosses the other applications's icon, e.g, a triangle with the apex at the launcher icon.
Once the mouse moves over the previews, there should probably be a new (or second) triangle with the apex at the preview and not at the launcher icon protecting the path along the axis of the previews. I am not even sure if it should be a triangle, because it would probably need to be something that moves along with the cursor (why should the first preview stay the reference point?) and then I wonder if a triangle would even be the correct shape for that.