Bug 503548

Summary: It's not ideal that ToolTipArea has a delay to appear, but not to disappear
Product: [Frameworks and Libraries] libplasma Reporter: m1vri31c
Component: tooltipsAssignee: Plasma Bugs List <plasma-bugs-null>
Status: CONFIRMED ---    
Severity: minor CC: kde, m1vri31c, nate, notmart, qydwhotmail
Priority: LO Keywords: usability
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: NixOS   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description m1vri31c 2025-04-29 20:29:08 UTC
SUMMARY

When:
Appearance > General > Show small window previews when hovering over tasks = enabled

Duration of hover to activate time, and particularly the deactivation time causes usability issues. Activation time takes too long in my opinion, but the way the previews instantly disappear when the cursor even slightly leaves the preview popup is definitely problem. The combined effect is that it takes a long time to bring up the previews, followed by frequently accidentally losing them with a careless mouse movement, and having to repeat the process of spending longer than you'd expect to bring up the previews.

In terms of the mouse hover duration before they appear, I would imagine the choice to take a little longer for them to appear was to avoid accidental activation, but even taking this into account it feels like it takes a long time to me. A compromise might be to measure time spent hovering the mouse over anywhere on the widget rather than a single task, so that one can move the mouse anywhere on the widget to begin the countdown, then move the mouse more slowly and precisely to the desired task while waiting for the previews to appear. 

Another issue with specifically the Icons-Only Task Manager is the way the previews go away when hovering over a pinned icon. Normally you can move the cursor over different tasks and continue to see small window previews of each task uninterrupted without having to wait, but if you have to move the mouse over a pinned icon that isn't active to get to the other task you want to preview, the previews go away, and you once again have to wait the full duration of the activation time to see previews again for that other task. Since you have already activated the small window previews and the cursor hasn't left the widget, expected behaviour would be that the window previews activate immediately upon the cursor moving over another active task.


**Activation duration**

STEPS TO REPRODUCE
1. Enable Appearance > General > Show small window previews when hovering over tasks
2. Hover the cursor over a task

OBSERVED RESULT
Takes a long time for small window previews to appear

EXPECTED RESULT
Takes less time


**Deactivation duration**

STEPS TO REPRODUCE
1. Enable Appearance > General > Show small window previews when hovering over tasks
2. Hover the cursor over a task
3. Move mouse off the small window previews

OBSERVED RESULT
Small window previews instantly disappear.

EXPECTED RESULT
Small window previews disappear quickly but not instantly, allowing for the mouse to briefly leave the previews without them disappearing.


**Hovering over pinned icons**

STEPS TO REPRODUCE
1. Icons Only Task Manager Only
2. Enable Appearance > General > Show small window previews when hovering over tasks
3. Open two tasks from pinned applications, and arrange a third pinned application between them in the task manager
4. Hover the cursor over over one task to activate small window previews
5. Move mouse to other active task, passing over the inactive pinned icon, without cursor leaving the applet

OBSERVED RESULT
Small window previews require full duration of activation time before reappearing when cursor reaches second task.

EXPECTED RESULT
Small window previews appear immediately when cursor reaches second task, just like they would if the pinned icon in between the two tasks wasn't there.



SOFTWARE/OS VERSIONS
Operating System: NixOS 25.05
KDE Plasma Version: 6.3.4
KDE Frameworks Version: 6.13.0
Qt Version: 6.9.0
Kernel Version: 6.12.19 (64-bit)
Graphics Platform: Wayland
Processors: 8 × Intel® Core™ i7-1065G7 CPU @ 1.30GHz
Memory: 15.2 GiB of RAM
Graphics Processor: Intel® Iris® Plus Graphics
Comment 1 m1vri31c 2025-04-29 20:38:03 UTC
(In reply to m1vri31c from comment #0)
> Duration of hover to activate time, and particularly the deactivation time
> causes usability issues. Activation time takes too long in my opinion, but
> the way the previews instantly disappear when the cursor even slightly
> leaves the preview popup is definitely problem. The combined effect is that
> it takes a long time to bring up the previews, followed by frequently
> accidentally losing them with a careless mouse movement, and having to
> repeat the process of spending longer than you'd expect to bring up the
> previews.
> 
> In terms of the mouse hover duration before they appear, I would imagine the
> choice to take a little longer for them to appear was to avoid accidental
> activation, but even taking this into account it feels like it takes a long
> time to me. A compromise might be to measure time spent hovering the mouse
> over anywhere on the widget rather than a single task, so that one can move
> the mouse anywhere on the widget to begin the countdown, then move the mouse
> more slowly and precisely to the desired task while waiting for the previews
> to appear. 
> 
> Another issue with specifically the Icons-Only Task Manager is the way the
> previews go away when hovering over a pinned icon. Normally you can move the
> cursor over different tasks and continue to see small window previews of
> each task uninterrupted without having to wait, but if you have to move the
> mouse over a pinned icon that isn't active to get to the other task you want
> to preview, the previews go away, and you once again have to wait the full
> duration of the activation time to see previews again for that other task.
> Since you have already activated the small window previews and the cursor
> hasn't left the widget, expected behaviour would be that the window previews
> activate immediately upon the cursor moving over another active task.

I tested some more and it seems like both of these suggestions (with one exception, below*) are how it is intended to work, but it often doesn't for me, so I am experiencing a bug.

*The exception: If you move your mouse first to a pinned icon, that does not start the countdown; the countdown only starts if you move the cursor over a task, at which point the countdown starts and when things work properly the rest of the behaviour I suggested is how it works.
Comment 2 m1vri31c 2025-04-29 20:39:38 UTC
(In reply to m1vri31c from comment #1)
"Both of these suggestions" was meant to apply to the second and third paragraphs, not the first. The instant deactivation time and arguably slow activation time are still a problem.
Comment 3 Nate Graham 2025-04-30 18:19:59 UTC
This is all how it's intended to work, yes.

We could potentially tweak things so that the popups provided by PlasmaCore.ToolTipArea (which are large and rich tooltips, not small ones with only a bit of text) appear immediately on hover, but disappear after a short delay when no longer hovered.
Comment 4 m1vri31c 2025-04-30 19:36:23 UTC
I don't think I would personally want it to appear immediately. Without looking at the code, it looks like it takes 1 second currently, I think halving that (0.5s) would feel more natural, with the same to disappear. That and having time mousing over pinned icons included in the time.
Comment 5 Nate Graham 2025-05-02 14:50:14 UTC
Could be, yeah. Since you've already located the code that controls this, feel free to experiment and submit a patch, if you're so inclined.