Add Budgie desktop wallpaper support

This commit is contained in:
AnmiTaliDev 2026-08-15 06:47:14 +05:00
parent 7c9473cfee
commit c76762fb24
No known key found for this signature in database
GPG key ID: C15CE1C091FF3004
2 changed files with 8 additions and 6 deletions

View file

@ -153,8 +153,8 @@
} }
infile.close(); infile.close();
} }
if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate" || desktop == "deepin") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate" || desktop == "deepin" || desktop == "budgie") {
if (desktop == "cinnamon" || desktop == "gnome" || desktop == "deepin") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "deepin" || desktop == "budgie") {
if (desktop == "cinnamon") bgsetting = g_settings_new("org.cinnamon.desktop.background"); if (desktop == "cinnamon") bgsetting = g_settings_new("org.cinnamon.desktop.background");
else if (desktop == "deepin") bgsetting = g_settings_new("com.deepin.wrap.gnome.desktop.background"); else if (desktop == "deepin") bgsetting = g_settings_new("com.deepin.wrap.gnome.desktop.background");
else bgsetting = g_settings_new("org.gnome.desktop.background"); else bgsetting = g_settings_new("org.gnome.desktop.background");
@ -358,13 +358,13 @@ end:
} }
std::string gameDirStr(gameDir); std::string gameDirStr(gameDir);
desktopEnvironmentInit(); desktopEnvironmentInit();
if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate" || desktop == "deepin") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate" || desktop == "deepin" || desktop == "budgie") {
std::stringstream hexColor; std::stringstream hexColor;
hexColor << "#" << std::hex << color; hexColor << "#" << std::hex << color;
g_settings_set_string(bgsetting, "picture-options", "scaled"); g_settings_set_string(bgsetting, "picture-options", "scaled");
g_settings_set_string(bgsetting, "primary-color", hexColor.str().c_str()); g_settings_set_string(bgsetting, "primary-color", hexColor.str().c_str());
g_settings_set_string(bgsetting, "color-shading-type", "solid"); g_settings_set_string(bgsetting, "color-shading-type", "solid");
if (desktop == "cinnamon" || desktop == "gnome" || desktop == "deepin") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "deepin" || desktop == "budgie") {
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());
@ -506,8 +506,8 @@ RB_METHOD(wallpaperReset){
MacDesktop::ResetBackground(); MacDesktop::ResetBackground();
#else #else
desktopEnvironmentInit(); desktopEnvironmentInit();
if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate" || desktop == "deepin") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "mate" || desktop == "deepin" || desktop == "budgie") {
if (desktop == "cinnamon" || desktop == "gnome" || desktop == "deepin") { if (desktop == "cinnamon" || desktop == "gnome" || desktop == "deepin" || desktop == "budgie") {
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

@ -289,6 +289,8 @@ Oneshot::Oneshot(RGSSThreadData &threadData) : threadData(threadData){
desktopEnv = "lxqt"; desktopEnv = "lxqt";
}else if (desktop.find("deepin") != std::string::npos){ }else if (desktop.find("deepin") != std::string::npos){
desktopEnv = "deepin"; desktopEnv = "deepin";
}else if (desktop.find("budgie") != std::string::npos){
desktopEnv = "budgie";
} }
} }