shimmerproject / elementary-xfce

Elementary icons forked from upstream, extended and maintained for Xfce
GNU General Public License v2.0
274 stars 37 forks source link

Remove excess dark themes #236

Closed newhoa closed 2 years ago

newhoa commented 2 years ago

Opening an issue to discuss whether it would be possible to remove some of the dark variant themes.

With the transition to Gtk3, Xfce (and other Gtk3-based desktops/apps) can now use symbolic icons. It isn't a requirement but most places that rely on status or action icons (like the panel and toolbars) generally prefer symbolic icons now. This seems to be what the dark variant themes were made to fix, and doesn't seem all that necessary now.

Just a thought to try and ease the maintenance burden.

ochosi commented 2 years ago

This is good point. I agree that ideally they shouldn't be needed anymore.

@bluesabre Thoughts on just dropping them for the next Xubuntu LTS? Or would you wanna leave empty symlinks in place so upgrades don't visually break stuff?

bluesabre commented 2 years ago

@ochosi Empty symlinks sound like a friendly way to drop the additional themes. I'm not opposed to removing these themes for the LTS, we've got plenty of UIFe's coming anyway. :)

ochosi commented 2 years ago

@newhoa If you're up for it feel free to go ahead on this!

newhoa commented 2 years ago

I'm not all that comfortable myself trying to remove them before this LTS. I think there are still issues to address before doing so.

Most of the unique icons in the dark* themes are monochrome to give them a "symbolic" look without actually being so. I think this is to make them blend better (maybe in the panel) when they're next to actual symbolic icons (for example, hardware icons like mouse/keyboard, battery, volume, etc).

So I don't think they could be removed without first making sure the panel plugins support symbolic icons and don't need those anymore, or updating them to be non-symbolic looking so they can be seen in light and dark themes (and/or requesting/adding symbolic support for the apps/plugins that lack it).

Icons that I've noticed in day-to-day use that do not use symbolic icons and would need updating:

If you all can think of any more or are sure of any panel plugins that have switched to symbolic icons (so that the variants can be deleted) that would be helpful.

ochosi commented 2 years ago

Specifically the wifi things can be fixed easily by using the panel's Status Tray plugin and switching on the 'symbolic' option. In case your nm-applet doesn't use the appindicator you need to make sure it starts with nm-applet --indicator (e.g. via an autostart file).

The window-close icons should all be updated in Xfce. I have patched this in tons of components, but there surely are still some out there that use the non-symbolic version. But I wouldn't worry about that in the icon theme and instead just submit PRs against Xfce. The same goes for media-eject, it should also just be patched in Thunar.

Regarding LTS, we're way past UIF already so no new changes will land there anymore.

newhoa commented 2 years ago

@ochosi and @bluesabre

elementary-xfce-darkest was the easiest to remove and I've made a PR (#299). Should there remain a single dark version or would you all prefer a single unified theme and have no dark variants at all? Some apps like, ayatana panel indicator, still use non-symbolic icons so it might be worth keeping one dark variant. And some apps/projects, like MATE, are not going to use symbolic icons.

As for removal/deprecation... let me know if there is a better way to remove and transition.

Creating a simple symlink to the elementary-xfce folder doesn't work because then it uses the elementary-xfce index.theme. Then in Appearance settings elementary-xfce-darkest is removed elementary-xfce shows up twice. That would force the users theme to reset to hicolor on reboot.

So instead I've just made a blank/dummy index.theme with elementary-xfce as the fallback and kept it elementary-xfce-darkest while adding a deprecation message to the description.

I think there will need to be some kind of script to check the current theme and switch it to elementary-xfce before they are removed entirely. I don't know how or where that should be done (I guess that would need to be done on a distro/package level?) or the timeline that the deprecated dummy variants should remain.

Edit:

For future reference on checking/changing the themes: It can be checked via xfconf-query -c xsettings -p /Net/IconThemeName and if that is elementary-xfce-darkest it can be switched/set via xfconf-query -c xsettings -p /Net/IconThemeName -s elementary-xfce