2021-04-03 23:10:14 +02:00
|
|
|
#include "fastfetch.h"
|
2022-07-25 13:15:01 +02:00
|
|
|
#include "common/printing.h"
|
2022-09-24 19:39:48 +08:00
|
|
|
#include "detection/wmtheme/wmtheme.h"
|
2021-04-03 23:10:14 +02:00
|
|
|
|
2021-04-15 18:59:26 +02:00
|
|
|
#define FF_WMTHEME_MODULE_NAME "WM Theme"
|
|
|
|
|
#define FF_WMTHEME_NUM_FORMAT_ARGS 1
|
|
|
|
|
|
2022-09-24 19:39:48 +08:00
|
|
|
void ffPrintWMTheme(FFinstance* instance)
|
2021-04-03 23:10:14 +02:00
|
|
|
{
|
2022-09-24 19:39:48 +08:00
|
|
|
FFstrbuf themeOrError;
|
|
|
|
|
ffStrbufInit(&themeOrError);
|
|
|
|
|
if(ffDetectWmTheme(instance, &themeOrError))
|
2021-04-03 23:10:14 +02:00
|
|
|
{
|
2022-09-24 19:39:48 +08:00
|
|
|
if(instance->config.wmTheme.outputFormat.length == 0)
|
2021-05-07 11:02:09 +02:00
|
|
|
{
|
2022-09-24 19:39:48 +08:00
|
|
|
ffPrintLogoAndKey(instance, FF_WMTHEME_MODULE_NAME, 0, &instance->config.wmTheme.key);
|
|
|
|
|
puts(themeOrError.chars);
|
2021-05-07 11:02:09 +02:00
|
|
|
}
|
2022-09-24 19:39:48 +08:00
|
|
|
else
|
2021-04-26 20:47:32 +02:00
|
|
|
{
|
2022-09-24 19:39:48 +08:00
|
|
|
ffPrintFormat(instance, FF_WMTHEME_MODULE_NAME, 0, &instance->config.wmTheme, FF_WMTHEME_NUM_FORMAT_ARGS, (FFformatarg[]){
|
|
|
|
|
{FF_FORMAT_ARG_TYPE_STRBUF, &themeOrError}
|
|
|
|
|
});
|
2021-04-26 20:47:32 +02:00
|
|
|
}
|
2021-04-26 17:27:12 +02:00
|
|
|
}
|
2021-04-26 21:46:57 +02:00
|
|
|
else
|
2021-04-03 23:10:14 +02:00
|
|
|
{
|
2022-09-24 19:39:48 +08:00
|
|
|
ffPrintError(instance, FF_WMTHEME_MODULE_NAME, 0, &instance->config.wmTheme, "%*s", themeOrError.length, themeOrError.chars);
|
2021-04-03 23:10:14 +02:00
|
|
|
}
|
2022-09-24 19:39:48 +08:00
|
|
|
ffStrbufDestroy(&themeOrError);
|
2021-04-03 23:10:14 +02:00
|
|
|
}
|