diff --git a/app/src/desktopthemes/cinnamontheme.cpp b/app/src/desktopthemes/cinnamontheme.cpp index 1558a21711d1d165ff135669fb94c281ef985bd9..9b4629edc83c1fff589cbd69b9aac3b29b71ccdb 100644 --- a/app/src/desktopthemes/cinnamontheme.cpp +++ b/app/src/desktopthemes/cinnamontheme.cpp @@ -30,6 +30,11 @@ bool CinnamonTheme::applyAsGtk3Theme() const return setConfig("org.cinnamon.desktop.interface", "gtk-theme", themeName_); } +bool CinnamonTheme::applyAsMetacityTheme() const +{ + return setConfig("org.cinnamon.desktop.wm.preferences", "name", themeName_); +} + bool CinnamonTheme::applyAsCinnamonTheme() const { return setConfig("org.cinnamon.theme", "name", themeName_); diff --git a/app/src/desktopthemes/cinnamontheme.h b/app/src/desktopthemes/cinnamontheme.h index 9aaaec565c6c5379fa5e408b466050ea45614db3..07ff77a854a8b54b0f2293da4de1b2a5c1a92c29 100644 --- a/app/src/desktopthemes/cinnamontheme.h +++ b/app/src/desktopthemes/cinnamontheme.h @@ -13,6 +13,7 @@ public: bool applyAsIcon() const; bool applyAsCursor() const; bool applyAsGtk3Theme() const; + bool applyAsMetacityTheme() const; bool applyAsCinnamonTheme() const; private: diff --git a/app/src/handlers/desktopthemehandler.cpp b/app/src/handlers/desktopthemehandler.cpp index 89f047b79f853b21ab561968f9a9454217234bae..20869ec8ac63d9f919df1a02ce6279852328d18a 100644 --- a/app/src/handlers/desktopthemehandler.cpp +++ b/app/src/handlers/desktopthemehandler.cpp @@ -82,6 +82,7 @@ bool DesktopThemeHandler::isApplicableType(const QString &installType) const << "icons" << "cursors" << "gtk3_themes" + << "metacity_themes" << "cinnamon_themes"; } else if (desktop == "mate") { @@ -169,6 +170,9 @@ bool DesktopThemeHandler::applyTheme(const QString &path, const QString &install else if (installType == "gtk3_themes") { return cinnamonTheme.applyAsGtk3Theme(); } + else if (installType == "metacity_themes") { + return cinnamonTheme.applyAsMetacityTheme(); + } else if (installType == "cinnamon_themes") { return cinnamonTheme.applyAsCinnamonTheme(); }