summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominique Leuenberger <dimstar@opensuse.org>2022-10-20 08:48:19 +0200
committerGitHub <noreply@github.com>2022-10-20 08:48:19 +0200
commit7c97571dfbb6bc188d0e7c286fb5f1e143e76d81 (patch)
treec51e07158c6633ecde13182bdec01da023d9f7de
parent09fce547dfadc824686aa0bbf4935a04491a0790 (diff)
parent11cfe9b764682f76c0c895265e904245157a40c3 (diff)
downloadlibproxy-git-7c97571dfbb6bc188d0e7c286fb5f1e143e76d81.tar.gz
Merge pull request #192 from janbrummer/gnome-detection-fix
Use XDG_CURRENT_DESKTOP to detect GNOME desktop like systems
-rw-r--r--libproxy/modules/config_gnome3.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/libproxy/modules/config_gnome3.cpp b/libproxy/modules/config_gnome3.cpp
index 15b9dd2..7415027 100644
--- a/libproxy/modules/config_gnome3.cpp
+++ b/libproxy/modules/config_gnome3.cpp
@@ -295,13 +295,14 @@ static base_extension** gnome_config_extension_init() {
}
static bool gnome_config_extension_test() {
- return (getenv("GNOME_DESKTOP_SESSION_ID")
- || (getenv("DESKTOP_SESSION")
- && string(getenv("DESKTOP_SESSION")) == "gnome")
- || (getenv("DESKTOP_SESSION")
- && string(getenv("DESKTOP_SESSION")) == "gnome-wayland")
- || (getenv("DESKTOP_SESSION")
- && string(getenv("DESKTOP_SESSION")) == "mate"));
+ const char *desktops;
+
+ desktops = getenv ("XDG_CURRENT_DESKTOP");
+ if (!desktops)
+ return false;
+
+ /* Remember that XDG_CURRENT_DESKTOP is a list of strings. */
+ return strstr (desktops, "GNOME") != NULL;
}
MM_MODULE_INIT(gnome_config_extension,