better gtk detection

This commit is contained in:
Linus Dierheimer
2021-04-05 19:25:34 +02:00
parent af430bd405
commit de312adb52
11 changed files with 455 additions and 133 deletions
+12 -12
View File
@@ -5,20 +5,20 @@ void ffPrintTheme(FFinstance* instance)
char plasma[256];
ffParsePropFileHome(instance, ".config/kdeglobals", "Name=%[^\n]", plasma);
char gtk2[256];
ffParsePropFileHome(instance, ".gtkrc-2.0", "gtk-theme-name=\"%[^\"]+", gtk2);
if(gtk2[0] == '\0')
strcpy(gtk2, "Raleigh");
FFstrbuf* gtk2;
ffCalculateGTK2(instance, &gtk2, NULL, NULL);
char gtk3[256];
ffParsePropFileHome(instance, ".config/gtk-3.0/settings.ini", "gtk-theme-name=%[^\n]", gtk3);
if(gtk3[0] == '\0')
strcpy(gtk3, "Adwaita");
FFstrbuf* gtk3;
ffCalculateGTK3(instance, &gtk3, NULL, NULL);
char gtk4[256];
ffParsePropFileHome(instance, ".config/gtk-4.0/settings.ini", "gtk-theme-name=%[^\n]", gtk4);
if(gtk4[0] == '\0')
strcpy(gtk4, "Adwaita");
FFstrbuf* gtk4;
ffCalculateGTK4(instance, &gtk4, NULL, NULL);
if(plasma[0] == '\0' && gtk2->length == 0 && gtk3->length == 0 && gtk4->length == 0)
{
ffPrintError(instance, &instance->config.themeKey, "Theme", "No themes found");
return;
}
FF_STRBUF_CREATE(gtkPretty);
ffFormatGtkPretty(&gtkPretty, gtk2, gtk3, gtk4);