From cf42441b43aec2e0457ec6e4dfdf2af8e58ac716 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Fri, 28 Feb 2025 16:11:01 +0100 Subject: src/utils.(c|h): Add ayatana_common_utils_is_ubuntutouch() function. --- tests/tst_utils.vala | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tests/tst_utils.vala') diff --git a/tests/tst_utils.vala b/tests/tst_utils.vala index 44ce6fe..4d070e7 100644 --- a/tests/tst_utils.vala +++ b/tests/tst_utils.vala @@ -14,6 +14,14 @@ static int main(string[] args) set_variable("XDG_CURRENT_DESKTOP", "Lomiri", true); assert(utils_is_lomiri()); + unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_CURRENT_DESKTOP"); + assert(! utils_is_ubuntutouch()); + set_variable("XDG_CURRENT_DESKTOP", "Lomiri", true); + assert(! utils_is_ubuntutouch()); + set_variable("DESKTOP_SESSION", "ubuntu-touch", true); + assert(utils_is_ubuntutouch()); + unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); assert(! utils_is_gnome()); -- cgit v1.2.3 From 27fdf5af170bf355b6da32e11e3135e99a5e675a Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Fri, 28 Feb 2025 16:11:55 +0100 Subject: src/utils.h: On Linux Desktop, if Lomiri is running, but not Ubuntu Touch, then DESKTOP_SESSION is set to 'lomiri'. --- tests/tst_utils.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/tst_utils.vala') diff --git a/tests/tst_utils.vala b/tests/tst_utils.vala index 4d070e7..3762364 100644 --- a/tests/tst_utils.vala +++ b/tests/tst_utils.vala @@ -9,7 +9,7 @@ static int main(string[] args) unset_variable("DESKTOP_SESSION"); unset_variable("XDG_CURRENT_DESKTOP"); assert(! utils_is_lomiri()); - set_variable("DESKTOP_SESSION", "ubuntu-touch", true); + set_variable("DESKTOP_SESSION", "lomiri", true); assert(utils_is_lomiri()); set_variable("XDG_CURRENT_DESKTOP", "Lomiri", true); assert(utils_is_lomiri()); -- cgit v1.2.3 From fc90dc2da7979f927b7bcb2b041c0f2f72346cb5 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Fri, 28 Feb 2025 17:25:29 +0100 Subject: src/utils.c: Prefer XDG_SESSION_DESKTOP over DESKTOP_SESSION. --- tests/tst_utils.vala | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) (limited to 'tests/tst_utils.vala') diff --git a/tests/tst_utils.vala b/tests/tst_utils.vala index 3762364..e63ed99 100644 --- a/tests/tst_utils.vala +++ b/tests/tst_utils.vala @@ -6,70 +6,100 @@ static int main(string[] args) { assert(args.length == 2); - unset_variable("DESKTOP_SESSION"); unset_variable("XDG_CURRENT_DESKTOP"); + unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_lomiri()); set_variable("DESKTOP_SESSION", "lomiri", true); assert(utils_is_lomiri()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "lomiri", true); + assert(utils_is_lomiri()); set_variable("XDG_CURRENT_DESKTOP", "Lomiri", true); assert(utils_is_lomiri()); - unset_variable("DESKTOP_SESSION"); unset_variable("XDG_CURRENT_DESKTOP"); + unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_ubuntutouch()); set_variable("XDG_CURRENT_DESKTOP", "Lomiri", true); assert(! utils_is_ubuntutouch()); set_variable("DESKTOP_SESSION", "ubuntu-touch", true); assert(utils_is_ubuntutouch()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "ubuntu-touch", true); + assert(utils_is_ubuntutouch()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_gnome()); set_variable("DESKTOP_SESSION", "gnome", true); assert(utils_is_gnome()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "gnome", true); + assert(utils_is_gnome()); set_variable("XDG_CURRENT_DESKTOP", "GNOME", true); assert(utils_is_gnome()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_unity()); set_variable("DESKTOP_SESSION", "gnome-fallback", true); assert(! utils_is_unity()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "gnome-fallback", true); + assert(! utils_is_unity()); set_variable("XDG_CURRENT_DESKTOP", "Unity", true); assert(utils_is_unity()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_mate()); set_variable("DESKTOP_SESSION", "mate", true); assert(utils_is_mate()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "mate", true); + assert(utils_is_mate()); set_variable("XDG_CURRENT_DESKTOP", "MATE", true); assert(utils_is_mate()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_xfce()); set_variable("DESKTOP_SESSION", "xfce", true); assert(utils_is_xfce()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "xfce", true); + assert(utils_is_xfce()); set_variable("XDG_CURRENT_DESKTOP", "XFCE", true); assert(utils_is_xfce()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_pantheon()); set_variable("XDG_CURRENT_DESKTOP", "PANTHEON", true); assert(utils_is_pantheon()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); assert(! utils_is_budgie()); set_variable("DESKTOP_SESSION", "budgie-desktop", true); assert(utils_is_budgie()); + unset_variable("DESKTOP_SESSION"); + set_variable("XDG_SESSION_DESKTOP", "budgie-desktop", true); + assert(utils_is_budgie()); set_variable("XDG_CURRENT_DESKTOP", "Budgie:GNOME", true); assert(utils_is_budgie()); unset_variable("XDG_CURRENT_DESKTOP"); unset_variable("DESKTOP_SESSION"); + unset_variable("XDG_SESSION_DESKTOP"); set_variable("GSETTINGS_SCHEMA_DIR", args[1], true); set_variable("GSETTINGS_BACKEND", "memory", true); -- cgit v1.2.3