Bug 332003

Summary: Adapt visualization when window thumbnail data is not available for tooltip
Product: [Plasma] plasmashell Reporter: Bhushan Shah <bhush94>
Component: Task Manager and Icons-Only Task ManagerAssignee: Eike Hein <hein>
Status: RESOLVED FIXED    
Severity: normal CC: afiestas, bugseforuns, fincer89, hsantanna, kde, ksthiele+kdebug, luizluca, mgraesslin, nate, ncdehnel, notmart, rcoe, thanosshadow5
Priority: NOR Keywords: regression
Version: master   
Target Milestone: 1.0   
Platform: Compiled Sources   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=418020
Latest Commit: Version Fixed In:
Bug Depends on: 336524    
Bug Blocks:    
Attachments: bug screenshot

Description Bhushan Shah 2014-03-11 03:51:04 UTC
You can assign this to kwin.. but I was not sure.
Comment 1 Martin Flöser 2014-03-11 07:02:03 UTC
(In reply to comment #0)
> You can assign this to kwin.. but I was not sure.

no, thumbnails are not provided by KWin.

I just tested and cannot reproduce. Is it related to the window being minimized when plasma starts?
Comment 2 Bhushan Shah 2014-03-11 08:03:42 UTC
Created attachment 85526 [details]
bug screenshot

Test case

1) Open more then 2 windows.
2) Maximize one and keep two window minimized
3) Hover on minimized one

Again happens only if you have more then 2 windows open.
Comment 3 Marco Martin 2014-03-11 10:11:11 UTC
isn't always been *normal* for minimized windows not having thumbnails? (since they are not mapped?)
Comment 4 Bhushan Shah 2014-03-11 10:12:58 UTC
No in Plasma 1 we have thumbnails for them also.
Comment 5 Martin Flöser 2014-03-11 10:42:47 UTC
(In reply to comment #4)
> No in Plasma 1 we have thumbnails for them also.

no, Marco is right. KWin just has a hack to keep them. This hack is still present and should also work for Plasma. But if Plasma and/or KWin gets started when the window is already minimized it won't work.

Anyway -> RESOLVED WAYLAND :-)
Comment 6 Eike Hein 2014-03-11 13:39:34 UTC
Hmm I considered if it wouldn't look nicer to hide the thumbnail item when there's no data, since it would prevent unsightly scaling and draw less attention to the fact that something is missing, but one problem with that is the tooltip for window groups - when there are n windows expected, just omitting one is very confusing.
Comment 7 Alex Fiestas 2014-04-08 13:43:59 UTC
Or we can enable them by default (show always) and break some old apps that use "window detached" to detect minimized.
Comment 8 Luiz Angelo De Luca 2014-05-02 17:12:45 UTC
Would it be difficult to just get a screenshot before the window is minimized and show it at the thumbnail? Just make it visually different, like in gray scale (that is already used visual information for frozen app/image)
Comment 9 Bhushan Shah 2014-05-18 05:34:07 UTC
so can this be closed or confirmed? ;)
Comment 10 Martin Flöser 2014-05-18 17:26:38 UTC
In my opinion it's a CANTFIX on X11. But I like the suggestion from comment #6 and would be interested to go that direction.
Comment 11 David Edmundson 2014-06-20 14:55:18 UTC
If Kwin managed to do it previously, I don't see why it's impossible for plasma now.
Comment 12 Martin Flöser 2014-06-20 21:06:59 UTC
(In reply to comment #11)
> If Kwin managed to do it previously, I don't see why it's impossible for
> plasma now.

well it's complex :-) KWin keeps the last pixmap, but KWin already has the pixmap. But Plasma doesn't have a pixmap all the time. When the thumbnail gets shown the window is minimized, the pixmap is not around and thus it cannot get the texture. The same happens for KWin when restarting the compositor with minimized windows. For those KWin also doesn't have pixmaps.

What should work (haven't tried) is setting "Keep window thumbnails" to "Always" in the Compositing KCM.
Comment 13 Eike Hein 2014-06-20 21:11:26 UTC
Martin,

can you add a prop for "I don't have a pixmap for this" to PlasmaCore.WindowThumbnail, or an invokable(winid)?

That's a prerequisite for pursueing anything like #6, which would probably look like this in practice: For single-window tooltips, simply hide the whole thumbnail section; for group tooltips, replace the thumb with some sort of "don't have data" icon item.
Comment 14 Martin Flöser 2014-06-20 21:20:38 UTC
> can you add a prop for "I don't have a pixmap for this" to
> PlasmaCore.WindowThumbnail, or an invokable(winid)?

yes that can be done, but requires quite some rework to get all the fallback 
to the icon removed (that doesn't make sense in that case). As that's quite 
some code and uses two different implementations (GLX and EGL) my 
recommendation would be to delay this to frameworks 5.1
Comment 15 Eike Hein 2014-06-20 21:22:14 UTC
No objections. Would you like a separate ticket for the component change with you as assignee?
Comment 16 Eike Hein 2014-06-20 21:25:06 UTC
Actually, I think it does make sense to track these separately, let me just set that up real quick.
Comment 17 Eike Hein 2014-06-20 21:29:08 UTC
Updating title and adding bug 336524 to depends.
Comment 18 Kai Uwe Broulik 2017-08-25 14:37:11 UTC
*** Bug 367670 has been marked as a duplicate of this bug. ***
Comment 19 Nate Graham 2017-12-13 21:11:42 UTC
*** Bug 363800 has been marked as a duplicate of this bug. ***
Comment 20 Nate Graham 2018-04-06 04:42:48 UTC
*** Bug 392774 has been marked as a duplicate of this bug. ***
Comment 21 Henrique Sant'Anna 2018-12-09 15:53:26 UTC
The tooltip should look the same or very similar no matter if the window is minimized or not. It means that if there are a particular window that is minimized and another one that is not, both windows should get the preview of the window content or both windows should not. That's an UX issue.
One way to workaround that is to do a window screenshot when minimizing it and than use the static screenshot as the window preview while it is minimized, like suggested at comment #8.
Comment 22 Fushan Wen 2021-11-02 04:37:25 UTC
*** Bug 411336 has been marked as a duplicate of this bug. ***
Comment 23 Nate Graham 2022-01-23 06:11:31 UTC
This now works as expected on Wayland, and on X11 the app's icon is at least shown, and there aren't bug-free ways to improve on this. I think we can call it fixed now.