SUMMARY The Telegram icon in systray is broken when set to Monochrome. This only affects KDE Plasma, other desktop environments are not affected. Upstream bug: https://github.com/telegramdesktop/tdesktop/issues/29102 STEPS TO REPRODUCE 1. Have an up to date Telegram Desktop 2. Switch the configuration of the icon to monochrome in advanced settings OBSERVED RESULT Icon is monochrome EXPECTED RESULT Icon is coloured Operating System: Fedora Linux 41 KDE Plasma Version: 6.3.3 KDE Frameworks Version: 6.12.0 Qt Version: 6.8.2 Kernel Version: 6.13.7-200.fc41.x86_64 (64-bit) Graphics Platform: X11 Processors: 16 × AMD Ryzen 7 7700X 8-Core Processor Memory: 30.4 GiB of RAM Graphics Processor 1: NVIDIA GeForce RTX 4080 System Version: 1.0 ADDITIONAL INFORMATION It seems that we use a custom breeze Telegram icon. This is not the first time that this breaks when Telegram updates. I highly suggest we just let Telegram use its own icon and don't try to apply magic to it.
I can add that monochrome Telegram icon is also broken for me in Kubuntu 24.04 with kiconthemes 5.115.0. I think the observed and expected results are swapped in the bug description. When I have monochrome icon enabled in the Telegram client settings, a colored icon is shown in the tray. Also, this bug may need to be against frameworks-kiconthemes. Operating System: Kubuntu 24.04 KDE Plasma Version: 5.27.12 KDE Frameworks Version: 5.115.0 Qt Version: 5.15.13 Kernel Version: 6.11.0-1011-lowlatency (64-bit) Graphics Platform: X11 Processors: 16 × 12th Gen Intel® Core™ i7-12700K Memory: 31.1 GiB of RAM Graphics Processor: NVIDIA GeForce RTX 2080 Ti/PCIe/SSE2 Manufacturer: ASUS
It might also be due to the recent change with icons that have -symbolic in their name, since the new Telegram icons now do, see https://github.com/telegramdesktop/tdesktop/commit/31cb2f19996e543ee4a756ba035421bbaf309d6d In either case and unrelated to the cause, I recommend we just use whatever Telegram does and don't apply any magic or custom breeze icons to it, so we don't have something that might break again in a future Telegram update
Telegram now has monochrome icon checkbox in the settings. If it is switched on - icon is shown in the systray, off - disappears. Bug in telegram: https://github.com/telegramdesktop/tdesktop/issues/29131
If Telegram 5.12.3 works, and 5.12.4 does not, is there any reason to believe that this isn't in fact a Telegram bug? FWIW I can reproduce that everything works fine for me with 5.12.3 and everything KDE from git master, so it really seems like as Telegram change broke this. https://invent.kde.org/frameworks/kiconthemes/-/commit/13181b03eac3c85f0649d5399d8c3037c388928c was committed three years ago, and there are other changes since then as well.
(In reply to Nate Graham from comment #4) > If Telegram 5.12.3 works, and 5.12.4 does not, is there any reason to > believe that this isn't in fact a Telegram bug? FWIW I can reproduce that > everything works fine for me with 5.12.3 and everything KDE from git master, > so it really seems like as Telegram change broke this. Please, read the discussion in the linked Telegram bug. https://github.com/telegramdesktop/tdesktop/issues/29102 Telegram developers explicitly attribute the problem to KDE behavior that is different from other DEs and consider it a KDE bug. I'm going to reopen this until it is either fixed or everyone agree that the problem is not in KDE.
According to a Telegram developer (see https://github.com/telegramdesktop/tdesktop/issues/29102#issuecomment-2758938039 for details) the issue is indeed on the KDE end. (Note: it's entirely unrelated to the recent changes in plasma to prefer symbolic tray icons, the problem can be reproduced even in plasma 5) Apparently the source of the issue on our end is https://invent.kde.org/frameworks/kiconthemes/-/commit/13181b03eac3c85f0649d5399d8c3037c388928c, so indeed probably the bug component should be changed to kiconthemes in frameworks. I just did that, let's hope it stays open and is investigated a bit longer over there.
I've already mentioned this in the Telegram bug, but I'll duplicate here. The colored icon that is shown instead of the monochrome one does not indicate that there are unread messages. That is, the user has no way to know he has unread messages. This severely impacts usability of the Telegram client.
I managed to work around this on my Kubuntu 24.04. In /usr/share/icons/breeze/status/symbolic, create symlinks: - org.telegram.desktop-symbolic.svg -> ../22/telegram-panel.svg - org.telegram.desktop-mute-symbolic.svg -> ../22/telegram-mute-panel.svg - org.telegram.desktop-attention-symbolic.svg -> ../22/telegram-attention-panel.svg And similar symlinks in /usr/share/icons/breeze-dark/status/symbolic. If you have other icon themes that override Telegram icons, you may need to also add similar symlinks there. After that, change your icon theme to something else, Apply, then back and Apply. This will regenerate the local icon cache. After doing this I can see the monochrome Telegram icon in the system tray that I used to have with 5.12.3. Note: This will probably break when the affected icon themes update to add support for the new Telegram icon names. Be sure to remember to remove these symlinks if that happens.
So basically, Telegram changed the icon names it's asking for, and it also bundled new renamed icons, but the Breeze icon theme hasn't been updated accordingly yet, so when Telegram asks for an icon with the new name, Breeze doesn't have it and provides a fallback icon with the wrong appearance? Do I have that right?
(In reply to Nate Graham from comment #9) > So basically, Telegram changed the icon names it's asking for, and it also > bundled new renamed icons, but the Breeze icon theme hasn't been updated > accordingly yet, so when Telegram asks for an icon with the new name, Breeze > doesn't have it and provides a fallback icon with the wrong appearance? Do I > have that right? Yes, that's how I understand it as well. The suggestion though is not just update the icon theme with the new icon names but fix the icon selection algorithm, so that when the theme doesn't have a matching icon, the icon provided by the application is chosen.
Yeah, just renaming the icons in Breeze won't fix it for other icon themes and will regress as soon as another icon is added or if something changes and the need to rename the icons appears again. The current fallback algorithm means that if an icon theme provides application icon but applications has more icons than just it, all applications' icons will appear as the application icon, since in today's sandboxed world all icons have to be prefixed with application ID.
I'll look into whether we can change the algorithm and remain compliant with the icon lookup spec. It might be the right call here to simply delete the Breeze-themed icon assets for 3rd-party apps, as otherwise we'll always be playing whack-a-mole to catch up with what apps not under our control are doing.
If you want to delete icons for 3rd-party apps, I hope you first consider a way for them to support recoloring, as currently kiconthemes requires icon theme to have FollowsColorScheme=true and index.theme and hicolor doesn't do that of course. It would also be nice if there was some unification with GTK's recoloring which automatically recolors any SVG items to text color and allows to use error/warning/success classes that map to GTK theme (typically red/orange/green). GTK also doesn't require to use fill=currentColor (could have any value) nor having a <style> tag with CSS rules which makes it way simpler to make a recolorable icon. GTK recolors any icons whose name end with -symbolic, in any theme.
*FollowsColorScheme=true in index.theme
Git commit ca3edf98d1444b9988e0bf6b57fb5433a7347199 by Nate Graham, on behalf of Rocket Aaron. Committed on 04/04/2025 at 12:48. Pushed by ngraham into branch 'master'. Add symbolic links for telegram-desktop new icon names Telegram Desktop changed their tray icon name since 5.12.4[^1], from `telegram{,-attention,-mute}-panel` to `org.telegram.desktop{,{,-attention,-mute}-symbolic}`. There is a `org.telegram.desktop` icon in Breeze Icons for colorful application icon, so all the tray icons just fell back to that one. This commit adds symlinks for all the new icon names. [^1]: https://github.com/telegramdesktop/tdesktop/commit/99a1c98ae07df9d383f120cdd26ddb2a31ad8a07 A +1 -0 icons/status/22/org.telegram.desktop-attention-symbolic.svg A +1 -0 icons/status/22/org.telegram.desktop-attention.svg A +1 -0 icons/status/22/org.telegram.desktop-mute-symbolic.svg A +1 -0 icons/status/22/org.telegram.desktop-mute.svg A +1 -0 icons/status/22/org.telegram.desktop-symbolic.svg A +1 -0 icons/status/22/org.telegram.desktop.svg https://invent.kde.org/frameworks/breeze-icons/-/commit/ca3edf98d1444b9988e0bf6b57fb5433a7347199
I'm having trouble envisioning a change to the icon selection algorithm that makes sense at a global level here. Right now org.app.desktop-status falling back to org.app.desktop is pretty much intentional and expected. Clearly it produces a bad result here, but if we changes the algorithm to instead first try falling back to org.app.desktop-status in hicolor (i.e. the icons shipped by the app itself) it could have a lot of visual fallout and result in icons with mismatched styles appearing everywhere. Some people would prefer this, but some people wouldn't. Regardless, the request is already tracked in Bug 476084 so I'm marking this as a duplicate of it. *** This bug has been marked as a duplicate of bug 476084 ***
Will the icon symlinks be backported to KDE 5? KDE 5 is in Kubuntu 24.04, which will be supported until 2029, so it would be very desirable to have this fix there.
The symlink change went into Breeze icons, which is a framework, not part of Plasma, and there are no LTS/KF5 branches. So no, on our side, the change will not be backported. This will have to be up to those still shipping old versions of our software.
Still not fixed for the snap version, see https://github.com/telegramdesktop/tdesktop/releases/tag/v5.12.4
That's likely a separate issue; probably the snap runtime (or whatever it's called) doesn't have the new icons in it yet. *** This bug has been marked as a duplicate of bug 476084 ***
See the link, snap icons have different prefix since snap package have their own app ids, more symlinks needed
Ultimately the issue here really is just Bug 476084, so please keep it at that. Any changes we make here are simply workarounds for it. I'll make some more compatibility symlinks though. *** This bug has been marked as a duplicate of bug 476084 ***
Git commit a1b2765d25a0c675125636b6e380869821cbcbd7 by Nate Graham. Committed on 04/04/2025 at 17:44. Pushed by ngraham into branch 'master'. Add symlinks for new Telegram icons for the Snap too A +1 -0 icons/status/22/snap.telegram.desktop-attention-symbolic.svg A +1 -0 icons/status/22/snap.telegram.desktop-attention.svg A +1 -0 icons/status/22/snap.telegram.desktop-mute-symbolic.svg A +1 -0 icons/status/22/snap.telegram.desktop-mute.svg A +1 -0 icons/status/22/snap.telegram.desktop-symbolic.svg A +1 -0 icons/status/22/snap.telegram.desktop.svg https://invent.kde.org/frameworks/breeze-icons/-/commit/a1b2765d25a0c675125636b6e380869821cbcbd7
Nate, you added snap.telegram-desktop{,{,-attention,-mute}-symbolic} while the icon names are snap.telegram-desktop.{,{,-attention,-mute}-symbolic}. The changelog even says to notice the dot. Snap doesn't support `-` as the separator between app id and the rest of name unlike flatpak.
i.e. they should be icons/status/22/snap.telegram.desktop.-attention-symbolic.svg icons/status/22/snap.telegram.desktop.-attention.svg icons/status/22/snap.telegram.desktop.-mute-symbolic.svg icons/status/22/snap.telegram.desktop.-mute.svg icons/status/22/snap.telegram.desktop.-symbolic.svg icons/status/22/snap.telegram.desktop..svg (two dots before svg in the last icon isn't a typo, too)
Gross, how awful.
Git commit 2c956e897654e03dc5bae6d8f28d47837b853e36 by Nate Graham. Committed on 04/04/2025 at 18:44. Pushed by ngraham into branch 'master'. Correct names of new Snap symlinks for Telegram's tray icons Apparently Snap needs a dot after ".desktop" no matter what. Amends a1b2765d25a0c675125636b6e380869821cbcbd7 R +0 -0 icons/status/22/snap.telegram.desktop.-attention-symbolic.svg [from: icons/status/22/snap.telegram.desktop-attention-symbolic.svg - 100% similarity] R +0 -0 icons/status/22/snap.telegram.desktop.-attention.svg [from: icons/status/22/snap.telegram.desktop-attention.svg - 100% similarity] R +0 -0 icons/status/22/snap.telegram.desktop.-mute-symbolic.svg [from: icons/status/22/snap.telegram.desktop-mute-symbolic.svg - 100% similarity] R +0 -0 icons/status/22/snap.telegram.desktop.-mute.svg [from: icons/status/22/snap.telegram.desktop-mute.svg - 100% similarity] R +0 -0 icons/status/22/snap.telegram.desktop.-symbolic.svg [from: icons/status/22/snap.telegram.desktop-symbolic.svg - 100% similarity] R +0 -0 icons/status/22/snap.telegram.desktop..svg [from: icons/status/22/snap.telegram.desktop.svg - 100% similarity] https://invent.kde.org/frameworks/breeze-icons/-/commit/2c956e897654e03dc5bae6d8f28d47837b853e36
The only thing that's really necessary is matching what all other DEs do, except LXDE of course. It copies whatever KDE does so has the same problem. No other desktop environments have this problem. I think someone did a pull request that makes KDE match what Gnome (and subsequently all other desktop environments) do.
LXQt does like Qt and GTK (not KDE) since 2017: https://github.com/lxqt/libqtxdg/pull/116
Sorry if this is hijacking this current thread (dunno if this actually needs a separate bug report), but wanted to inform about a potential regression with any applied workarounds. I just updated my fedora 41 KDE, got KDE frameworks 6.13.0 and now the telegram app icon (in kickoff/panel/Menu editor) is symbolic. The actual system tray icon did get changed back to symbolic (it was coloured TG icon before update). I got curious and tried changing the icon via Menu editor, the default selected one is org.telegram... (name cuts off), and while in 'select icon' window shows the icon in colour (small and a bit dull, maybe meant for systray?), selecting it shows the preview as symbolic and when applied, icons in kickoff and panel stay symbolic. There is another icon called 'Telegram', that looks more appropriate and works as expected. Lastly, that telegram option 'use monochrome icon' doesn't do anything, if it ever worked before (never tested). Operating System: Fedora Linux 41 KDE Plasma Version: 6.3.4 KDE Frameworks Version: 6.13.0 Qt Version: 6.8.2 Kernel Version: 6.13.10-200.fc41.x86_64 (64-bit) Telegram version: 5.13 (flatpak)
(In reply to Gravemind2015 from comment #30) > Sorry if this is hijacking this current thread (dunno if this actually needs > a separate bug report), but wanted to inform about a potential regression > with any applied workarounds. I just updated my fedora 41 KDE, got KDE > frameworks 6.13.0 and now the telegram app icon (in kickoff/panel/Menu > editor) is symbolic. The actual system tray icon did get changed back to > symbolic (it was coloured TG icon before update). Guys, I do not want symbolic icons for Telegram!!! It was colorful for me, I installed snap version especially for that! Your tendency to make everything symbolic without asking users is boring!!!
I actually like the monochrome Telegram tray icon that is shipped with Breeze (is that what you call "symbolic"?), and I always use it. And before this issue, it was enabled by the "Use monochrome icon" option in Telegram settings, i.e. it was an opt-in, as intended. I realize that replacing icons in the icon theme is what led to this issue in the first place, but I just wanted to admit that the looks of the customized icons are just better for some people.
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/breeze-icons/-/merge_requests/462
Git commit fee5f10ccef57929ebd68e3bc9530a024e72b518 by Leandro Guedes. Committed on 14/04/2025 at 17:42. Pushed by ngraham into branch 'master'. Remove Telegram icons that shouldn't have been added D +0 -1 icons/status/22/org.telegram.desktop-attention.svg D +0 -1 icons/status/22/org.telegram.desktop-mute.svg D +0 -1 icons/status/22/org.telegram.desktop.svg https://invent.kde.org/frameworks/breeze-icons/-/commit/fee5f10ccef57929ebd68e3bc9530a024e72b518
Git commit 08e0a66e81257ce62fdf9793c4cb4b95c383af4f by Nate Graham. Committed on 15/04/2025 at 18:04. Pushed by ngraham into branch 'fix-the-telegram-snap-icons-too'. Fix unintended Telegram Snap icons too M +1 -1 icons/status/22/snap.telegram.desktop.-attention-symbolic.svg D +0 -1 icons/status/22/snap.telegram.desktop.-attention.svg M +1 -1 icons/status/22/snap.telegram.desktop.-mute-symbolic.svg D +0 -1 icons/status/22/snap.telegram.desktop.-mute.svg M +1 -1 icons/status/22/snap.telegram.desktop.-symbolic.svg D +0 -1 icons/status/22/snap.telegram.desktop..svg https://invent.kde.org/frameworks/breeze-icons/-/commit/08e0a66e81257ce62fdf9793c4cb4b95c383af4f
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/breeze-icons/-/merge_requests/463