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. --- src/utils.c | 6 ++++++ src/utils.h | 3 +++ tests/tst_utils.cpp | 11 +++++++++++ tests/tst_utils.vala | 8 ++++++++ 4 files changed, 28 insertions(+) diff --git a/src/utils.c b/src/utils.c index 0a33a74..712b060 100644 --- a/src/utils.c +++ b/src/utils.c @@ -73,6 +73,12 @@ ayatana_common_utils_is_lomiri () return is_xdg_current_desktop(DESKTOP_LOMIRI, SESSION_LOMIRI); } +gboolean +ayatana_common_utils_is_ubuntutouch () +{ + return is_xdg_current_desktop(DESKTOP_UBUNTUTOUCH, SESSION_UBUNTUTOUCH); +} + gboolean ayatana_common_utils_is_gnome () { diff --git a/src/utils.h b/src/utils.h index 9d3e641..c7c658e 100644 --- a/src/utils.h +++ b/src/utils.h @@ -23,6 +23,7 @@ #include static const char * const DESKTOP_LOMIRI = "Lomiri"; +static const char * const DESKTOP_UBUNTUTOUCH = NULL; static const char * const DESKTOP_UNITY = "Unity"; static const char * const DESKTOP_MATE = "MATE"; static const char * const DESKTOP_GNOME = "GNOME"; @@ -30,6 +31,7 @@ static const char * const DESKTOP_XFCE = "XFCE"; static const char * const DESKTOP_PANTHEON = "PANTHEON"; static const char * const DESKTOP_BUDGIE = "Budgie"; static const char * const SESSION_LOMIRI = "ubuntu-touch"; +static const char * const SESSION_UBUNTUTOUCH = "ubuntu-touch"; static const char * const SESSION_UNITY = NULL; static const char * const SESSION_MATE = "mate"; static const char * const SESSION_GNOME = "gnome"; @@ -38,6 +40,7 @@ static const char * const SESSION_PANTHEON = NULL; static const char * const SESSION_BUDGIE = "budgie-desktop"; gboolean ayatana_common_utils_is_lomiri(); +gboolean ayatana_common_utils_is_ubuntutouch(); gboolean ayatana_common_utils_is_unity(); gboolean ayatana_common_utils_is_gnome(); gboolean ayatana_common_utils_is_mate(); diff --git a/tests/tst_utils.cpp b/tests/tst_utils.cpp index a1cf7c5..0d59da0 100644 --- a/tests/tst_utils.cpp +++ b/tests/tst_utils.cpp @@ -49,6 +49,17 @@ TEST_F(XdgCurrentDesktopUtilsTest, isLomiri) EXPECT_TRUE(ayatana_common_utils_is_lomiri()); } +TEST_F(XdgCurrentDesktopUtilsTest, isUbuntuTouch) +{ + unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("DESKTOP_SESSION"); + EXPECT_FALSE(ayatana_common_utils_is_ubuntutouch()); + setenv("XDG_CURRENT_DESKTOP", "Lomiri", 1); + EXPECT_FALSE(ayatana_common_utils_is_ubuntutouch()); + setenv("DESKTOP_SESSION", "ubuntu-touch", 1); + EXPECT_TRUE(ayatana_common_utils_is_ubuntutouch()); +} + TEST_F(XdgCurrentDesktopUtilsTest, isGnome) { unsetenv("XDG_CURRENT_DESKTOP"); 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'. --- src/utils.h | 2 +- tests/tst_utils.cpp | 2 +- tests/tst_utils.vala | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/utils.h b/src/utils.h index c7c658e..efb3ec7 100644 --- a/src/utils.h +++ b/src/utils.h @@ -30,7 +30,7 @@ static const char * const DESKTOP_GNOME = "GNOME"; static const char * const DESKTOP_XFCE = "XFCE"; static const char * const DESKTOP_PANTHEON = "PANTHEON"; static const char * const DESKTOP_BUDGIE = "Budgie"; -static const char * const SESSION_LOMIRI = "ubuntu-touch"; +static const char * const SESSION_LOMIRI = "lomiri"; static const char * const SESSION_UBUNTUTOUCH = "ubuntu-touch"; static const char * const SESSION_UNITY = NULL; static const char * const SESSION_MATE = "mate"; diff --git a/tests/tst_utils.cpp b/tests/tst_utils.cpp index 0d59da0..4f85d68 100644 --- a/tests/tst_utils.cpp +++ b/tests/tst_utils.cpp @@ -43,7 +43,7 @@ TEST_F(XdgCurrentDesktopUtilsTest, isLomiri) unsetenv("XDG_CURRENT_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_lomiri()); - setenv("DESKTOP_SESSION", "ubuntu-touch", 1); + setenv("DESKTOP_SESSION", "lomiri", 1); EXPECT_TRUE(ayatana_common_utils_is_lomiri()); setenv("XDG_CURRENT_DESKTOP", "Lomiri", 1); EXPECT_TRUE(ayatana_common_utils_is_lomiri()); 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 67f0b729a2be751f2ac95dba310faa9bc7331c3b Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Fri, 28 Feb 2025 16:12:32 +0100 Subject: src/CMakeLists.txt: Bump SOVERSION_MINOR (due to added symbol 'ayatana_common_utils_is_ubuntutouch'). --- src/CMakeLists.txt | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c7d351d..8da66c0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -19,7 +19,7 @@ set(PUBLIC_HEADERS set_target_properties(ayatana-common PROPERTIES - VERSION ${API_VERSION}.0.0 + VERSION ${API_VERSION}.1.0 SOVERSION ${ABI_VERSION} ) @@ -33,7 +33,7 @@ install(TARGETS ayatana-common DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}) if (INTROSPECTION_FOUND) add_custom_command( - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.gir" + OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.gir" DEPENDS "ayatana-common" WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMAND @@ -41,44 +41,44 @@ if (INTROSPECTION_FOUND) utils.c utils.h --no-libtool --namespace=AyatanaCommon - --nsversion=0.0 + --nsversion=0.1 --c-include=ayatana/common/utils.h --quiet --warn-all --include=GLib-2.0 --library="ayatana-common" --library-path=${CMAKE_CURRENT_BINARY_DIR} - --output "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.gir" + --output "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.gir" ) - install(FILES "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.gir" DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/gir-1.0") + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.gir" DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/gir-1.0") # AyatanaCommon.typelib add_custom_command( - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.typelib" - DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.gir" + OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.typelib" + DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.gir" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMAND ${INTROSPECTION_COMPILER} --includedir=${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.gir - -o "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.typelib" + ${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.gir + -o "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.typelib" ) - install(FILES "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.typelib" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/girepository-1.0") + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.typelib" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/girepository-1.0") # AyatanaCommon.vapi if (VALA_COMPILER) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon.vapi" - DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.typelib" + DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.typelib" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMAND ${VAPI_GEN} --library=AyatanaCommon - AyatanaCommon-0.0.gir + AyatanaCommon-0.1.gir ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon.vapi" DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/vala/vapi") @@ -87,7 +87,7 @@ if (INTROSPECTION_FOUND) else() - add_custom_target("src" ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.0.typelib") + add_custom_target("src" ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/AyatanaCommon-0.1.typelib") endif() -- 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. --- src/utils.c | 8 ++++++-- tests/tst_utils.cpp | 28 ++++++++++++++++++++++++++++ tests/tst_utils.vala | 34 ++++++++++++++++++++++++++++++++-- 3 files changed, 66 insertions(+), 4 deletions(-) diff --git a/src/utils.c b/src/utils.c index 712b060..3a854a6 100644 --- a/src/utils.c +++ b/src/utils.c @@ -55,13 +55,17 @@ is_xdg_current_desktop (const gchar* desktop, const gchar* session) if (session != NULL) { - const gchar *desktop_session = g_getenv ("DESKTOP_SESSION"); + const gchar *xdg_session_desktop = g_getenv ("XDG_SESSION_DESKTOP"); + if (xdg_session_desktop != NULL && g_str_equal(xdg_session_desktop, session)) + { + return TRUE; + } + const gchar *desktop_session = g_getenv ("DESKTOP_SESSION"); if (desktop_session != NULL && g_str_equal(desktop_session, session)) { return TRUE; } - } return FALSE; diff --git a/tests/tst_utils.cpp b/tests/tst_utils.cpp index 4f85d68..db2c672 100644 --- a/tests/tst_utils.cpp +++ b/tests/tst_utils.cpp @@ -41,10 +41,14 @@ public: TEST_F(XdgCurrentDesktopUtilsTest, isLomiri) { unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("XDG_SESSION_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_lomiri()); setenv("DESKTOP_SESSION", "lomiri", 1); EXPECT_TRUE(ayatana_common_utils_is_lomiri()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "lomiri", 1); + EXPECT_TRUE(ayatana_common_utils_is_lomiri()); setenv("XDG_CURRENT_DESKTOP", "Lomiri", 1); EXPECT_TRUE(ayatana_common_utils_is_lomiri()); } @@ -58,45 +62,64 @@ TEST_F(XdgCurrentDesktopUtilsTest, isUbuntuTouch) EXPECT_FALSE(ayatana_common_utils_is_ubuntutouch()); setenv("DESKTOP_SESSION", "ubuntu-touch", 1); EXPECT_TRUE(ayatana_common_utils_is_ubuntutouch()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "ubuntu-touch", 1); + EXPECT_TRUE(ayatana_common_utils_is_ubuntutouch()); } TEST_F(XdgCurrentDesktopUtilsTest, isGnome) { unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("XDG_SESSION_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_gnome()); setenv("DESKTOP_SESSION", "gnome", 1); EXPECT_TRUE(ayatana_common_utils_is_gnome()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "gnome", 1); + EXPECT_TRUE(ayatana_common_utils_is_gnome()); setenv("XDG_CURRENT_DESKTOP", "GNOME", 1); EXPECT_TRUE(ayatana_common_utils_is_gnome()); } TEST_F(XdgCurrentDesktopUtilsTest, isUnity) { unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("XDG_SESSION_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_unity()); setenv("DESKTOP_SESSION", "gnome-fallback", 1); EXPECT_FALSE(ayatana_common_utils_is_unity()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "gnome-fallback", 1); + EXPECT_FALSE(ayatana_common_utils_is_unity()); setenv("XDG_CURRENT_DESKTOP", "Unity", 1); EXPECT_TRUE(ayatana_common_utils_is_unity()); } TEST_F(XdgCurrentDesktopUtilsTest, isMate) { unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("XDG_SESSION_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_mate()); setenv("DESKTOP_SESSION", "mate", 1); EXPECT_TRUE(ayatana_common_utils_is_mate()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "mate", 1); + EXPECT_TRUE(ayatana_common_utils_is_mate()); setenv("XDG_CURRENT_DESKTOP", "MATE", 1); EXPECT_TRUE(ayatana_common_utils_is_mate()); } TEST_F(XdgCurrentDesktopUtilsTest, isXfce) { unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("XDG_SESSION_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_xfce()); setenv("DESKTOP_SESSION", "xfce", 1); EXPECT_TRUE(ayatana_common_utils_is_xfce()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "xfce", 1); + EXPECT_TRUE(ayatana_common_utils_is_xfce()); setenv("XDG_CURRENT_DESKTOP", "XFCE", 1); EXPECT_TRUE(ayatana_common_utils_is_xfce()); } @@ -104,6 +127,7 @@ TEST_F(XdgCurrentDesktopUtilsTest, isPantheon) { unsetenv("XDG_CURRENT_DESKTOP"); unsetenv("DESKTOP_SESSION"); + unsetenv("XDG_SESSION_DESKTOP"); EXPECT_FALSE(ayatana_common_utils_is_pantheon()); setenv("XDG_CURRENT_DESKTOP", "PANTHEON", 1); EXPECT_TRUE(ayatana_common_utils_is_pantheon()); @@ -111,10 +135,14 @@ TEST_F(XdgCurrentDesktopUtilsTest, isPantheon) TEST_F(XdgCurrentDesktopUtilsTest, isBudgie) { unsetenv("XDG_CURRENT_DESKTOP"); + unsetenv("XDG_SESSION_DESKTOP"); unsetenv("DESKTOP_SESSION"); EXPECT_FALSE(ayatana_common_utils_is_budgie()); setenv("DESKTOP_SESSION", "budgie-desktop", 1); EXPECT_TRUE(ayatana_common_utils_is_budgie()); + unsetenv("DESKTOP_SESSION"); + setenv("XDG_SESSION_DESKTOP", "budgie-desktop", 1); + EXPECT_TRUE(ayatana_common_utils_is_budgie()); setenv("XDG_CURRENT_DESKTOP", "Budgie:GNOME", 1); EXPECT_TRUE(ayatana_common_utils_is_budgie()); } 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 From b626d39b0d2ebd35df56460dc440802619d72043 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8D=E4=BA=88?= Date: Mon, 1 Apr 2024 01:58:20 +0000 Subject: Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/zh_Hans/ --- po/zh_CN.po | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/po/zh_CN.po b/po/zh_CN.po index bbe02e5..943c17e 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2022-12-04 13:48+0000\n" -"Last-Translator: Kevin Zhou \n" +"PO-Revision-Date: 2024-04-01 02:24+0000\n" +"Last-Translator: 复予 \n" "Language-Team: Chinese (Simplified) \n" "Language: zh_CN\n" @@ -17,14 +17,14 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.15-dev\n" +"X-Generator: Weblate 5.5-dev\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "最长菜单文本长度" +msgstr "最大菜单文本长度" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." -msgstr "在文本被缩略之前显示在动态菜单条目上的字符长度。设置为0则不作修改。" +msgstr "在文本被缩略前,显示在动态菜单条目上的字符长度。设置为0则不作修改。" -- cgit v1.2.3 From 2ea2eaf913985fca90f39ce027b8d28c68d168cf Mon Sep 17 00:00:00 2001 From: umesaburo sagawa Date: Tue, 13 Aug 2024 08:04:14 +0000 Subject: Translated using Weblate (Japanese) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/ja/ --- po/ja.po | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/po/ja.po b/po/ja.po index 6d65b60..36ade9c 100644 --- a/po/ja.po +++ b/po/ja.po @@ -8,21 +8,24 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2021-06-12 01:32+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"PO-Revision-Date: 2024-08-14 08:09+0000\n" +"Last-Translator: umesaburo sagawa \n" +"Language-Team: Japanese \n" "Language: ja\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.7-dev\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "" +msgstr "メニューテキストの最大長" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." -msgstr "" +msgstr "テキストが省略される前に動的メニュー項目に表示する文字数。変更しない場合は 0 " +"に設定します。" -- cgit v1.2.3 From f784172cf7361c811c48646fba5f1a96c989e8e6 Mon Sep 17 00:00:00 2001 From: Remus-Gabriel Chelu Date: Fri, 27 Sep 2024 23:39:27 +0000 Subject: Translated using Weblate (Romanian) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/ro/ --- po/ro.po | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/po/ro.po b/po/ro.po index 9567b22..84e3301 100644 --- a/po/ro.po +++ b/po/ro.po @@ -8,22 +8,27 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2021-06-12 01:32+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"PO-Revision-Date: 2024-09-29 00:16+0000\n" +"Last-Translator: Remus-Gabriel Chelu \n" +"Language-Team: Romanian \n" "Language: ro\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "20)) ? 1 : 2;\n" +"X-Generator: Weblate 5.8-dev\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "" +msgstr "Lungimea maximă a textului meniului" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." msgstr "" +"Numărul de caractere care trebuie afișate în elementele de meniu dinamic " +"înainte ca textul să fie trunchiat cu puncte de suspensie. Puneți la 0 " +"pentru a rămâne neschimbat." -- cgit v1.2.3 From af9a848a089aa872a43d1d8a2961f7590648ca93 Mon Sep 17 00:00:00 2001 From: hugoalh Date: Wed, 30 Oct 2024 04:44:02 +0000 Subject: Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/zh_Hant/ --- po/zh_TW.po | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/po/zh_TW.po b/po/zh_TW.po index 8ca1194..bca9eb0 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -8,20 +8,23 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2021-06-12 01:32+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"PO-Revision-Date: 2024-10-31 03:08+0000\n" +"Last-Translator: hugoalh \n" +"Language-Team: Chinese (Traditional Han script) \n" "Language: zh_TW\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.8.2-dev\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "" +msgstr "最大選單文字長度" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." -msgstr "" +msgstr "在文字被省略之前在動態選單項目中顯示的字元數。設定為 0 以保持不變。" -- cgit v1.2.3 From c1e021b9cb8ac01ff4850def2b0c42e24879b375 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=AE=A4=E0=AE=AE=E0=AE=BF=E0=AE=B4=E0=AF=8D=E0=AE=A8?= =?UTF-8?q?=E0=AF=87=E0=AE=B0=E0=AE=AE=E0=AF=8D?= Date: Fri, 8 Nov 2024 13:04:23 +0000 Subject: Translated using Weblate (Tamil) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/ta/ --- po/ta.po | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/po/ta.po b/po/ta.po index eff7cb5..f884046 100644 --- a/po/ta.po +++ b/po/ta.po @@ -8,20 +8,25 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2021-06-12 01:32+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"PO-Revision-Date: 2024-11-09 14:00+0000\n" +"Last-Translator: தமிழ்நேரம் \n" +"Language-Team: Tamil \n" "Language: ta\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.8.2\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "" +msgstr "அதிகபட்ச பட்டியல் உரை நீளம்" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." msgstr "" +"உரையை நீள்வாங்குவதற்கு முன் மாறும் பட்டியல் உருப்படிகளில் காண்பிக்க வேண்டிய எழுத்துகளின் எண்ணிக்கை. மாறாமல் இருக்க 0 என " +"அமைக்கவும்." -- cgit v1.2.3 From a6f8e790fae72b05afd3cece4e26365098cba73e Mon Sep 17 00:00:00 2001 From: Ricky Tigg Date: Tue, 17 Dec 2024 10:19:02 +0000 Subject: Translated using Weblate (Finnish) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/fi/ --- po/fi.po | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/po/fi.po b/po/fi.po index 053fbdb..2e834b4 100644 --- a/po/fi.po +++ b/po/fi.po @@ -8,21 +8,25 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2021-06-12 01:32+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"PO-Revision-Date: 2024-12-18 11:00+0000\n" +"Last-Translator: Ricky Tigg \n" +"Language-Team: Finnish \n" "Language: fi\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.9.2-dev\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "" +msgstr "Valikkotekstin enimmäispituus" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." msgstr "" +"Dynaamisissa valikon vaihtoehdoissa näytettävien merkkien määrä ennen kuin " +"teksti ellipsoidaan. Aseta arvoksi 0, jos haluat jättää ennalleen." -- cgit v1.2.3 From dc299daf148950f20153b7156dc6de5120bf5df7 Mon Sep 17 00:00:00 2001 From: Temuri Doghonadze Date: Mon, 17 Feb 2025 00:28:38 +0000 Subject: Translated using Weblate (Georgian) Currently translated at 100.0% (2 of 2 strings) Translation: Ayatana Indicators/Ayatana Common Library Translate-URL: https://hosted.weblate.org/projects/ayatana-indicators/libayatana-common/ka/ --- po/ka.po | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/po/ka.po b/po/ka.po index d2c1f59..4fe11de 100644 --- a/po/ka.po +++ b/po/ka.po @@ -8,20 +8,25 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-14 07:41+0200\n" -"PO-Revision-Date: 2021-06-12 01:32+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"PO-Revision-Date: 2025-02-17 04:59+0000\n" +"Last-Translator: Temuri Doghonadze \n" +"Language-Team: Georgian \n" "Language: ka\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.10\n" #: data/org.ayatana.common.gschema.xml:1 msgid "Maximum menu text length" -msgstr "" +msgstr "მაქსიმალური მენიუს ტექსტის სიგრძე" #: data/org.ayatana.common.gschema.xml:2 msgid "" "The number of characters to show in dynamic menu items before the text is " "ellipsized. Set to 0 to leave unchanged." msgstr "" +"სიმბოლოების რაოდენობა, რომელიც გამოჩნდება დინამიკური მენიუს პუნქტებში, სანამ " +"ტექსტი შემოკლდება. დააყენეთ 0-ზე, თუ ცვლილება არ გნებავთ." -- cgit v1.2.3