Bug 485748 - amarok icon, in systray does not follow dark breeze theme
Summary: amarok icon, in systray does not follow dark breeze theme
Alias: None
Product: amarok
Classification: Applications
Component: general (show other bugs)
Version: 2.9.71
Platform: openSUSE Linux
: NOR normal
Target Milestone: kf5
Assignee: Amarok Developers
Depends on:
Reported: 2024-04-18 18:04 UTC by victorhck
Modified: 2024-04-21 10:16 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Note You need to log in before you can comment on or make changes to this bug.
Description victorhck 2024-04-18 18:04:16 UTC
If you're not sure this is actually a bug, instead post about it at https://discuss.kde.org

If you're reporting a crash, attach a backtrace with debug symbols; see https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports


akregator icon, in systray, does not follow dark breeze theme. A colorful icon is used instead.
(something similar to this bug reported to akregator)

Linux/KDE Plasma: openSUSE Tumbleweed 20240417
(available in About System)
KDE Plasma Version: 6.0.3
KDE Frameworks Version: 6.1.0
Qt Version: 6.7.0

Comment 1 Tuomas Nurmi 2024-04-19 06:44:18 UTC
Yes, experiencing this on my Plasma6 Tumbleweed system, too, but not on Tumbleweed still in Plasma5, so I suppose this is somehow related to Plasma/KF version.
Icon is set in TrayIcon.cpp:83 with
    KStatusNotifierItem::setIconByName( "amarok" );
so nothing strange there and this is likely somehow related to icon themes / installation of icons in build process. Will inspect later unless someone else comes up with a solution before that.
Comment 2 Tuomas Nurmi 2024-04-20 10:40:18 UTC
OK, inspected a bit more:
The icon that does not follow theme is https://github.com/KDE/breeze-icons/blob/master/icons/apps/48/amarok.svg
The icon for other sizes is https://github.com/KDE/breeze-icons/blob/master/icons/apps/32/amarok-symbolic.svg which does follow the theme.
Changing KStatusNotifierItem::setIconByName( "amarok" );
to KStatusNotifierItem::setIconByName( "amarok-symbolic" );
fixes this, but I don't think is the right way to go, as according to https://develop.kde.org/docs/plasma/theme/theme-tray-icons/
the systray icon Amarok should be using is "amarok".

I had a quick look at recent changes in some relevant KF components,
at least commit https://github.com/KDE/kiconthemes/commit/2d22b9d8798f1ba2642aa3b982a65c9865fbf52d might be related to changed behaviour (didn't assess yet whether actually is the case),
another potential place for changes causing this might be https://github.com/KDE/plasma-workspace/commits/master/applets/systemtray/statusnotifieritemsource.cpp
Comment 3 Tuomas Nurmi 2024-04-21 10:16:39 UTC
Git commit e9bc393ef17fd0a5332fd359f1b746ca9adda003 by Tuomas Nurmi.
Committed on 21/04/2024 at 10:12.
Pushed by nurmi into branch 'master'.

Change systray icon to use symbolic version

Not having "-symbolic" in name prevents showing of symbolic icon on KF6 Plasma systray.
Looking at various bugreports and code changes done in Yakuake and other applications,
this is apparently ok way to fix this, as it should fall back to icon without symbolic
suffix if none is found.
Related: bug 477228

M  +2    -0    ChangeLog
M  +1    -1    src/TrayIcon.cpp