From 764d2b7fc98d260b08f3c7a93fd4a4e2cb4967af Mon Sep 17 00:00:00 2001 From: DarN Date: Sat, 26 Jun 2021 18:14:09 +0200 Subject: [PATCH] Refactored config file cursor functions --- src/modules/cursor.c | 52 +++++++++++++------------------------------- 1 file changed, 15 insertions(+), 37 deletions(-) diff --git a/src/modules/cursor.c b/src/modules/cursor.c index 55e743cbf..0ca1d120c 100644 --- a/src/modules/cursor.c +++ b/src/modules/cursor.c @@ -51,36 +51,6 @@ static void printCursorGTK(FFinstance* instance) ffStrbufDestroy(&theme); } -static void printCursorPlasma(FFinstance* instance) -{ - FFstrbuf cursorTheme; - ffStrbufInit(&cursorTheme); - - FFstrbuf cursorSize; - ffStrbufInit(&cursorSize); - - if(ffParsePropFileConfigValues(instance, "kcminputrc", 2, (FFpropquery[]) { - {"cursorTheme =", &cursorTheme}, - {"cursorSize =", &cursorSize} - })) { - if(cursorTheme.length == 0) - ffStrbufAppendS(&cursorTheme, "Breeze"); - - if(cursorSize.length == 0) - ffStrbufAppendS(&cursorSize, "24"); - } - - if(cursorTheme.length == 0) - { - ffPrintError(instance, FF_CURSOR_MODULE_NAME, 0, &instance->config.cursorKey, &instance->config.cursorFormat, FF_CURSOR_NUM_FORMAT_ARGS, "Couldn't find plasma cursor in kcminputrc"); - return; - } - - printCursor(instance, &cursorTheme, &cursorSize); - ffStrbufDestroy(&cursorTheme); - ffStrbufDestroy(&cursorSize); -} - static void printCursorXFCE(FFinstance* instance) { FFstrbuf cursorTheme; @@ -105,7 +75,7 @@ static void printCursorXFCE(FFinstance* instance) ffStrbufDestroy(&cursorSize); } -static void printCursorLXQt(FFinstance* instance) +static void printCursorFromConfigFile(FFinstance* instance, const char* relativeFilePath, const char* themeStart, const char* themeDefault, const char* sizeStart, const char* sizeDefault) { FFstrbuf cursorTheme; ffStrbufInit(&cursorTheme); @@ -113,15 +83,23 @@ static void printCursorLXQt(FFinstance* instance) FFstrbuf cursorSize; ffStrbufInit(&cursorSize); - if(ffParsePropFileConfigValues(instance, "/lxqt/session.conf", 2, (FFpropquery[]) { - {"cursor_theme =", &cursorTheme}, - {"cursor_size =", &cursorSize} + if(ffParsePropFileConfigValues(instance, relativeFilePath, 2, (FFpropquery[]) { + {themeStart, &cursorTheme}, + {sizeStart, &cursorSize} })) { + + if(cursorTheme.length == 0) + ffStrbufAppendS(&cursorTheme, themeDefault); + + if(cursorSize.length == 0) + ffStrbufAppendS(&cursorSize, sizeDefault); } if(cursorTheme.length == 0) { - ffPrintError(instance, FF_CURSOR_MODULE_NAME, 0, &instance->config.cursorKey, &instance->config.cursorFormat, FF_CURSOR_NUM_FORMAT_ARGS, "Couldn't find LXQt cursor in session.conf"); + ffPrintError(instance, FF_CURSOR_MODULE_NAME, 0, &instance->config.cursorKey, &instance->config.cursorFormat, FF_CURSOR_NUM_FORMAT_ARGS, "Couldn't find cursor in %s", relativeFilePath); + ffStrbufDestroy(&cursorTheme); + ffStrbufDestroy(&cursorSize); return; } @@ -205,7 +183,7 @@ void ffPrintCursor(FFinstance* instance) if(ffStrbufIgnCaseCompS(&wmde->dePrettyName, "KDE Plasma") == 0) { - printCursorPlasma(instance); + printCursorFromConfigFile(instance, "kcminputrc", "cursorTheme =", "Breeze", "cursorSize =", "24"); return; } @@ -217,7 +195,7 @@ void ffPrintCursor(FFinstance* instance) if(ffStrbufStartsWithIgnCaseS(&wmde->dePrettyName, "LXQt")) { - printCursorLXQt(instance); + printCursorFromConfigFile(instance, "lxqt/session.conf", "cursor_theme =", "Adwaita", "cursor_size =", "24"); return; }