Created attachment 160004 [details] Shadowy icons from Oxygen in Kasts and KClock SUMMARY *** When using an icon theme that has colored action icons (I use Oxygen icons), Kirigami apps make them look like black shadows instead of their proper, colored icons. *** STEPS TO REPRODUCE 1. Use icon theme with colored "Actions" icons 2. Run app that uses Kirigami 3. Actions icons are black shadowy versions of what they should look like. OBSERVED RESULT Kirigami apps render colored action icons (such as the ones from Oxygen) as black filled versions of what they should look like, resembling a shadow. I think it has to do with the fact that Breeze (the default icon theme) has simple, outline icons for actions. EXPECTED RESULT All actions icons should appear as their default colored selves. SOFTWARE/OS VERSIONS Windows: macOS: Linux/KDE Plasma: Kernel - 6.3.9-arch1-1 (64-bit) (available in About System) KDE Plasma Version: 5.27.6 KDE Frameworks Version: 5.107.0 Qt Version: 5.15.10 ADDITIONAL INFORMATION
This seems to mostly happen with icons in sidebars.
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kirigami/-/merge_requests/1192
Git commit bdb322527fbc910ce7124a45dc43dfaa0fad1522 by Nate Graham. Committed on 04/08/2023 at 16:58. Pushed by ngraham into branch 'master'. Icon: Remove automatic heuristic-based monochrome icon re-coloring This feature has caused many bugs over the years and its value is dubious to begin with. Automatically masking a colorful icon to instead be monochrome based on this or that heuristic violates the integrity of the user's icon theme and enforces a stylistic preference for monochrome icons that is not appropriate to do at the library level. If the user is using an icon theme whose icons have any color in them despite being 16 or 22px size or using the `-symbolic` suffix, this needs to be considered an intentional stylistic choice on the part of the icon theme, and it isn't something that we should monkey with here. As a bonus, we also reap an efficiency win by simply doing less unnecessary work most of the time. If a developer wants to do this masking anyway, they are still free to set `mask: true` in their code and then it will happen on an opt-in basis. Related: bug 473001, bug 469978, bug 465422, bug 451538 FIXED-IN: 6.0 M +2 -93 src/icon.cpp https://invent.kde.org/frameworks/kirigami/-/commit/bdb322527fbc910ce7124a45dc43dfaa0fad1522