diff --git a/app/src/handlers/systemhandler.cpp b/app/src/handlers/systemhandler.cpp index 6ea5ad756881136cf804bd289f98cd1fd178a938..dc4b823156af141a3cdb849d2dce9ec741022ae6 100644 --- a/app/src/handlers/systemhandler.cpp +++ b/app/src/handlers/systemhandler.cpp @@ -113,7 +113,8 @@ bool SystemHandler::isApplicableType(const QString &installType) const applicableTypes << "wallpapers" << "icons" << "cursors" - << "gtk3_themes"; + << "gtk3_themes" + << "xfwm4_themes"; } return applicableTypes.contains(installType); @@ -173,6 +174,9 @@ bool SystemHandler::applyFile(const QString &path, const QString &installType) c else if (installType == "gtk3_themes") { return applyXfceGtk3Theme(themeName); } + else if (installType == "xfwm4_themes") { + return applyXfceXfwm4Theme(themeName); + } } } @@ -328,4 +332,9 @@ bool SystemHandler::applyXfceGtk3Theme(const QString &themeName) const { return setConfigWithXfconf("xsettings", "/Net/ThemeName", themeName); } + +bool SystemHandler::applyXfceXfwm4Theme(const QString &themeName) const +{ + return setConfigWithXfconf("xfwm4", "/general/theme", themeName); +} #endif diff --git a/app/src/handlers/systemhandler.h b/app/src/handlers/systemhandler.h index 918e58dcc2e44e073b01c62cbfc26d7c703d5a45..9b80705337717ab6476395b7749ff634af45d37b 100644 --- a/app/src/handlers/systemhandler.h +++ b/app/src/handlers/systemhandler.h @@ -42,5 +42,6 @@ private: bool applyXfceIcon(const QString &themeName) const; bool applyXfceCursor(const QString &themeName) const; bool applyXfceGtk3Theme(const QString &themeName) const; + bool applyXfceXfwm4Theme(const QString &themeName) const; #endif };