Separate Cinnamon DE from GNOME DE

This commit is contained in:
Vinyl Darkscratch 2018-06-01 23:02:16 -07:00
parent b77b0c856f
commit 36102a12a4
2 changed files with 11 additions and 10 deletions

View file

@ -51,11 +51,11 @@
return; return;
} }
desktop = shState->oneshot().desktopEnv; desktop = shState->oneshot().desktopEnv;
if (desktop == "gnome" || desktop == "mate") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate") {
if (desktop == "gnome") { if (desktop == "cinnamon" || desktop == "gnome") {
bgsetting = g_settings_new("org.gnome.desktop.background"); 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"); defPictureURI = g_settings_get_string(bgsetting, "picture-uri");
std::cout << defPictureURI << std::endl;
} else { } else {
bgsetting = g_settings_new("org.mate.background"); bgsetting = g_settings_new("org.mate.background");
defPictureURI = g_settings_get_string(bgsetting, "picture-filename"); defPictureURI = g_settings_get_string(bgsetting, "picture-filename");
@ -184,10 +184,10 @@ end:
} }
std::string gameDirStr(gameDir); std::string gameDirStr(gameDir);
desktopEnvironmentInit(); desktopEnvironmentInit();
if (desktop == "gnome" || desktop == "mate") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate") {
std::stringstream hexColor; std::stringstream hexColor;
hexColor << "#" << std::hex << color; hexColor << "#" << std::hex << color;
if (desktop == "gnome") { if (desktop == "cinnamon" || desktop == "gnome") {
g_settings_set_string(bgsetting, "picture-uri", ("file://" + gameDirStr + path).c_str()); g_settings_set_string(bgsetting, "picture-uri", ("file://" + gameDirStr + path).c_str());
} else { } else {
g_settings_set_string(bgsetting, "picture-filename", (gameDirStr + path).c_str()); g_settings_set_string(bgsetting, "picture-filename", (gameDirStr + path).c_str());
@ -282,8 +282,8 @@ RB_METHOD(wallpaperReset)
MacDesktop::ResetBackground(); MacDesktop::ResetBackground();
#else #else
desktopEnvironmentInit(); desktopEnvironmentInit();
if (desktop == "gnome" || desktop == "mate") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate") {
if (desktop == "gnome") { if (desktop == "cinnamon" || desktop == "gnome") {
g_settings_set_string(bgsetting, "picture-uri", defPictureURI.c_str()); g_settings_set_string(bgsetting, "picture-uri", defPictureURI.c_str());
} else { } else {
g_settings_set_string(bgsetting, "picture-filename", defPictureURI.c_str()); g_settings_set_string(bgsetting, "picture-filename", defPictureURI.c_str());

View file

@ -282,8 +282,9 @@ Oneshot::Oneshot(RGSSThreadData &threadData) :
#ifdef OS_LINUX #ifdef OS_LINUX
std::string desktop(getenv("XDG_CURRENT_DESKTOP")); std::string desktop(getenv("XDG_CURRENT_DESKTOP"));
std::transform(desktop.begin(), desktop.end(), desktop.begin(), ::tolower); std::transform(desktop.begin(), desktop.end(), desktop.begin(), ::tolower);
if ( if (desktop.find("cinnamon") != std::string::npos) {
desktop.find("cinnamon") != std::string::npos || desktopEnv = "cinnamon";
} else if (
desktop.find("gnome") != std::string::npos || desktop.find("gnome") != std::string::npos ||
desktop.find("unity") != std::string::npos desktop.find("unity") != std::string::npos
) { ) {