ALEX11BR/ThemeChanger

Themes not universally being applied.

Opened this issue · 3 comments

I could not get my theme applied using ThemeChanger. I am using arch, and installed both optional dependencies.

The only way I could get it to work was by installing libadwaita-without-adwaita-git and editing /org/gnome/desktop/interface/gtk-theme with dconf-editor.

Yeah, looks like you're using Gnome 4. Will look into it tomorrow.

I think ThemeChanger should be able modify that dconf key, though.

Okay, so:

  1. Installing libadwaita-without-adwaita-git makes the themes apply when selected in ThemeChanger to Gnome 4 apps.
  2. The optional dependencies aren't required for your use case (Gnome 4 apps). They are:
  • xsettingsd: for live theme reloading in KDE or standalone WMs,
  • kvantum-qt5: a QT theming engine that can set themes to QT apps.

Maybe I could make a thing where in the GTK4 CSS that even libadwaita apps take into consideration the app adds an import to the theme CSS file. Will see.

One thing that i've noticed is that the light/dark theme setting isn't applied in Gnome 4 (and any other DE).

Will look into it (I'm a little bit busy this week).

Ok, so I looked into this, and themes can be applied on libadwaita applications without patching libadwaita using something like this:

~/.config/gtk-4.0/gtk.css:

* {
    all: unset;
}
@import url("<path to gtk4 theme css file>")

This can be implemented in the app by writing this in the GTK4 CSS before the custom part.

Impementation details

There needs to be a system to get (& store in the themesTreeViewModel of the SearchableThemeList) the path of the css file of a selected theme.