Search code examples
gtkgtk3

What themes does GTK+ provide by default?


I want to change the default GTK theme for Windows. I know how to do that: by modifying the settings.ini file, or like this:

settings = gtk_settings_get_default();
gtk_settings_set_string_property(settings, "gtk-theme-name", "ThemeName", NULL);

the problem is the documentation does not provide a list of possible values to use in place of ThemeName, what values does that argument accept?


Solution

  • the question is not really answerable: there can be as many themes as you install in a directory reachable by GTK+ itself. you cannot enumerate them programmatically, since it's a user (or at least an application developer) setting, and you can ship as many themes as you like in your own application.

    there are various themes built in within GTK+, depending on the platform.

    available on every platform, you have:

    • Raleigh
    • Adwaita (starting from GTK+ 3.14)
    • HighConstrast (starting from GTK+ 3.16)

    on Windows you also have the win32 theme available. the default theme, starting from GTK+ 3.14, is Adwaita.