Bug 378612 - Many applications show generic wayland icon in taskbar
Summary: Many applications show generic wayland icon in taskbar
Status: RESOLVED NOT A BUG
Alias: None
Product: frameworks-kcoreaddons
Classification: Frameworks and Libraries
Component: general (other bugs)
Version First Reported In: 5.32.0
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Michael Pyne
URL:
Keywords:
Depends on:
Blocks: 373976
  Show dependency treegraph
 
Reported: 2017-04-10 10:33 UTC by Andrius Štikonas
Modified: 2017-04-12 20:47 UTC (History)
2 users (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 Andrius Štikonas 2017-04-10 10:33:51 UTC
In Wayland session many applications (especially extragear) show generic wayland icon in plasma task manager.

If I understand correctly Plasma taskmanager gets application id from kwin and then tries to find appropriate .desktop file and look for Icon entry.

Now the problem happens when applications have their own non kde.org domain name (those include kalarm, ktorrent, kile, krusader, kbibtex, etc...). Let's look at KAlarm example:

In kalarm/src/main.cpp it sets homepage to http://www.astrojar.org.uk/kalarm
Similarly it says organization domain to kde.org. Both of these are reasonable.

Now for some reason the id that libtaskmanager gets from kwin is org.astrojar.kalarm. However, desktop file uses reverse dns of organization domain, i.e. org.kde.kalarm. Hence no icon is found.
Comment 1 Martin Flöser 2017-04-10 15:11:06 UTC
Please report to each and every of the applications. I have told it several times, I have been at akademy presenting this issue to a wide audience and nobody fixes it.

It is not a problem in KWin, it is in the applications.
Comment 2 Luigi Toscano 2017-04-10 15:14:26 UTC
Does it mean that the homepage must be under kde.org? Isn't the organization domain enough?
Comment 3 Andrius Štikonas 2017-04-11 14:26:13 UTC
(In reply to Martin Gräßlin from comment #1)
> It is not a problem in KWin, it is in the applications.

Well, after looking at kwin code I determined it's not a problem in KWin but neither in applications! It is in fact a bug in frameworks.
Comment 4 Andrius Štikonas 2017-04-11 14:39:59 UTC
Internally, KAboutData combines reverse domain of homepage into the name of desktop file. This is not what should be done. All KDE applications use organization domain name for desktop files, i.e. org.kde.kalarm.desktop not uk.org.astrojar.kalarm.desktop.

See line 457 in https://api.kde.org/frameworks/kcoreaddons/html/kaboutdata_8cpp_source.html
Comment 5 Andrius Štikonas 2017-04-12 20:47:05 UTC
Ok, so I guess what happened is that application developers were not aware that setting organizationDomain is not enough and it does not change desktop file path. A consensus was to add explicit setDesktopFilePath.