https://bugs.kde.org/show_bug.cgi?id=445489

--- Comment #3 from Andreas Ferber <af+...@chaos-agency.de> ---
After further investigation I think
https://invent.kde.org/frameworks/breeze-icons/-/commit/1b92cfc450f6ab6b72ed9ef69c052e4624e5a040
needs to be reverted too, as that appears to be the root cause of bug 444095
and the ill-fated attempt to fix it. Because of the icon lookup rules mentioned
in my previous comment the way duplicates between icons and icons-dark were
removed actually broke *all* icons where only certain sizes have tweaked
dark-mode versions.

I thiink the only clean way to achieve the goal of not having duplicate files
between the two themes is to first rename the `icons` and `icons-dark` folders
in the source tree to `breeze` and `breeze-dark` respectively in order to be
able to make symlinks between the two themes that don't break when getting
installed (I don't think cmake can adjust symlink targets during install), and
then replacing duplicate files with symlinks. Only in cases where *all* sizes
are identical between breeze and breeze-dark can the icon safely be removed
from breeze-dark completely.

The alternatives would be to either make a separate list of all breeze icons
that need to be installed into breeze-dark in order to make all sizes work
properly, or make a complex heuristic that determines which icons need to be
copied at install time. Both are IMO inferior to the symlink approach outlined
above. A list would have to be maintained and is easy to miss when adding new
tweaked icons to the dark theme. A heuristic OTOH would most likely be fragile
and prone to future breakage. And both approaches would only remove the
duplicates in the source tree, the installed versions of the themes would still
have duplicated files while the symlink approach would remove duplicates there
as well.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to