Bug 447845 - Under Wayland, XWayland web apps have incorrect icon
Summary: Under Wayland, XWayland web apps have incorrect icon
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Unclassified
Component: Task Manager and Icons-Only Task Manager (show other bugs)
Version: 5.23.4
Platform: Kubuntu Packages Linux
: NOR normal
Target Milestone: 1.0
Assignee: Eike Hein
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-02 16:39 UTC by Alan Pope
Modified: 2022-04-15 00:28 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.25


Attachments
screenshot showing incorrect icon (248.35 KB, image/png)
2022-01-02 16:39 UTC, Alan Pope
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alan Pope 2022-01-02 16:39:57 UTC
Created attachment 145057 [details]
screenshot showing incorrect icon

SUMMARY

"Web apps" in this context are shortcuts to websites, created as desktop files in .local/share/applications by the web browser. These are created to enable "alt-tabbing" between web sites, and having icons in the "Icons-Only Task Manager" to make access to those sites quick and easy. I'm using Microsoft Edge as the browser, and what I explained below works on X11, but not on Wayland.

STEPS TO REPRODUCE
1. Install / Open Microsoft Edge
2. Visit a website that has an icon such as Tweetdeck or BBC news (site selection doesn't really matter, but needs a favicon)
3. In Edge click Kebab -> Apps -> Install this site as an app
4. Enter a description, then click "Install" button

OBSERVED RESULT under WAYLAND

Under wayland - not working :
- A window opens, detached from the browser, with the website chosen inside it.
- ALT-TAB shows the 'favicon' for the site in the switcher
- The Icons-Only Task Manager does _not_ show the right icon. Instead, you see a second icon for the browser.

In the attached screenshot, you'll see bottom left, that I am hovering over the second Microsoft Edge icon, which should be a Tweetdeck icon, and from the preview you can (just about) see the web content is the Tweetdeck site. 

EXPECTED RESULT under X11

Under X11 - working :
- A window opens, detached from the browser, with the website chosen inside it.
- ALT-TAB shows the 'favicon' for the site in the switcher
- The Icons-Only Task Manager shows the correct icon for the additional application.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Kubuntu 21.10 + Kubuntu Backports PPA
KDE Plasma Version: 5.23.4
KDE Frameworks Version: 5.89.0
Qt Version: 5.15.2

ADDITIONAL INFORMATION
Comment 1 Nicolas Fella 2022-01-03 15:56:16 UTC
The problem is that on X11 we use the windowClassName to map the window to the .desktop file, which works.
On Wayland we (mainly) use the applicationId for that, which only really works for native Wayland windows, not XWayland windows like Edge.

What we probably need to do is expose the windowClassName for XWayland windows in the Plasma<->KWin communication and use that in the task manager
Comment 2 Nicolas Fella 2022-01-12 16:47:41 UTC
https://chromium-review.googlesource.com/c/chromium/src/+/3383817 might fix that, unless Edge has a custom codepath for that
Comment 3 Nate Graham 2022-01-12 17:19:06 UTC

*** This bug has been marked as a duplicate of bug 358277 ***
Comment 4 Bug Janitor Service 2022-01-23 20:06:44 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1396
Comment 5 Nicolas Fella 2022-04-14 11:20:37 UTC
Git commit 7b94f03c0f5fec052454a1c8d6faec0aff2ce0cb by Nicolas Fella.
Committed on 14/04/2022 at 11:14.
Pushed by nicolasfella into branch 'master'.

[libtaskmanager] Consider resource name for XWayland windows

Like we do in an X11 session
Related: bug 358277

M  +1    -1    libtaskmanager/waylandtasksmodel.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/7b94f03c0f5fec052454a1c8d6faec0aff2ce0cb