From 36102a12a4c8652e149dce9e4c03a7448b98f0f0 Mon Sep 17 00:00:00 2001 From: Vinyl Darkscratch Date: Fri, 1 Jun 2018 23:02:16 -0700 Subject: [PATCH] Separate Cinnamon DE from GNOME DE --- binding-mri/wallpaper-binding.cpp | 16 ++++++++-------- src/oneshot.cpp | 5 +++-- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/binding-mri/wallpaper-binding.cpp b/binding-mri/wallpaper-binding.cpp index c4e3234..91d1d83 100644 --- a/binding-mri/wallpaper-binding.cpp +++ b/binding-mri/wallpaper-binding.cpp @@ -51,11 +51,11 @@ return; } desktop = shState->oneshot().desktopEnv; - if (desktop == "gnome" || desktop == "mate") { - if (desktop == "gnome") { - bgsetting = g_settings_new("org.gnome.desktop.background"); + if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate") { + if (desktop == "cinnamon" || desktop == "gnome") { + if (desktop == "cinnamon") bgsetting = g_settings_new("org.cinnamon.desktop.background"); + else bgsetting = g_settings_new("org.gnome.desktop.background"); defPictureURI = g_settings_get_string(bgsetting, "picture-uri"); - std::cout << defPictureURI << std::endl; } else { bgsetting = g_settings_new("org.mate.background"); defPictureURI = g_settings_get_string(bgsetting, "picture-filename"); @@ -184,10 +184,10 @@ end: } std::string gameDirStr(gameDir); desktopEnvironmentInit(); - if (desktop == "gnome" || desktop == "mate") { + if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate") { std::stringstream hexColor; hexColor << "#" << std::hex << color; - if (desktop == "gnome") { + if (desktop == "cinnamon" || desktop == "gnome") { g_settings_set_string(bgsetting, "picture-uri", ("file://" + gameDirStr + path).c_str()); } else { g_settings_set_string(bgsetting, "picture-filename", (gameDirStr + path).c_str()); @@ -282,8 +282,8 @@ RB_METHOD(wallpaperReset) MacDesktop::ResetBackground(); #else desktopEnvironmentInit(); - if (desktop == "gnome" || desktop == "mate") { - if (desktop == "gnome") { + if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate") { + if (desktop == "cinnamon" || desktop == "gnome") { g_settings_set_string(bgsetting, "picture-uri", defPictureURI.c_str()); } else { g_settings_set_string(bgsetting, "picture-filename", defPictureURI.c_str()); diff --git a/src/oneshot.cpp b/src/oneshot.cpp index 57b4c58..ade2968 100644 --- a/src/oneshot.cpp +++ b/src/oneshot.cpp @@ -282,8 +282,9 @@ Oneshot::Oneshot(RGSSThreadData &threadData) : #ifdef OS_LINUX std::string desktop(getenv("XDG_CURRENT_DESKTOP")); std::transform(desktop.begin(), desktop.end(), desktop.begin(), ::tolower); - if ( - desktop.find("cinnamon") != std::string::npos || + if (desktop.find("cinnamon") != std::string::npos) { + desktopEnv = "cinnamon"; + } else if ( desktop.find("gnome") != std::string::npos || desktop.find("unity") != std::string::npos ) {