aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2023-02-21 22:22:21 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2023-02-27 16:29:28 +0100
commit5b53d364c64602c3dee72210b4ed9320e4d0efa3 (patch)
tree1e6c2bca3e004f418ea7f90882cb2f2524a97399 /src
parent8e57201526a2e2a0a585ebadb498fb26b74edc12 (diff)
downloadayatana-indicator-session-5b53d364c64602c3dee72210b4ed9320e4d0efa3.tar.gz
ayatana-indicator-session-5b53d364c64602c3dee72210b4ed9320e4d0efa3.tar.bz2
ayatana-indicator-session-5b53d364c64602c3dee72210b4ed9320e4d0efa3.zip
src/{service.c,dbus-backends/actions.c}: Special treatment if running in an Ubuntu Touch session for desktop help, distro help and bug reporting URL.
Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
Diffstat (limited to 'src')
-rw-r--r--src/backend-dbus/actions.c4
-rw-r--r--src/service.c14
-rw-r--r--src/utils.c51
3 files changed, 48 insertions, 21 deletions
diff --git a/src/backend-dbus/actions.c b/src/backend-dbus/actions.c
index 125b849..5a2523e 100644
--- a/src/backend-dbus/actions.c
+++ b/src/backend-dbus/actions.c
@@ -890,7 +890,9 @@ my_power_off (IndicatorSessionActions * actions)
static void
my_desktop_help (IndicatorSessionActions * self G_GNUC_UNUSED)
{
- if (ayatana_common_utils_have_budgie_program ("yelp"))
+ if (g_strcmp0(get_desktop_session(), "ubuntu-touch") == 0)
+ ayatana_common_utils_open_url("https://ubuntu-touch.io/");
+ else if (ayatana_common_utils_have_budgie_program ("yelp"))
ayatana_common_utils_execute_command ("yelp help:gnome-user-guide");
else if (ayatana_common_utils_is_lomiri())
ayatana_common_utils_open_url("https://lomiri.com");
diff --git a/src/service.c b/src/service.c
index d467859..159ee80 100644
--- a/src/service.c
+++ b/src/service.c
@@ -379,8 +379,18 @@ create_admin_section (IndicatorSessionService * self)
{
GMenu * menu;
priv_t * p = self->priv;
- gchar * desktop_help_label = g_strdup_printf(_("%s Help"), get_desktop_name());
- gchar * distro_help_label = g_strdup_printf(_("%s Help…"), get_distro_name());
+ gchar * desktop_help_label = NULL;
+ gchar * distro_help_label = NULL;
+ if (g_strcmp0(get_desktop_session(), "ubuntu-touch") == 0)
+ {
+ desktop_help_label = g_strdup(_("About Ubuntu Touch…"));
+ distro_help_label = g_strdup(_("About UBports Foundation…"));
+ }
+ else
+ {
+ desktop_help_label = g_strdup_printf(_("%s Help"), get_desktop_name());
+ distro_help_label = g_strdup_printf(_("%s Help…"), get_distro_name());
+ }
menu = g_menu_new ();
if (ayatana_common_utils_is_lomiri()) {
diff --git a/src/utils.c b/src/utils.c
index 9593a46..cd01edf 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -98,21 +98,29 @@ get_distro_url (void)
if (distro_url == NULL)
{
- GHashTable * os_release = get_os_release();
- gpointer value = g_hash_table_lookup(os_release, "SUPPORT_URL");
-
- if (value == NULL)
- {
- value = g_hash_table_lookup(os_release, "HOME_URL");
-
- if (value == NULL)
+ if (g_strcmp0(get_desktop_session(), "ubuntu-touch") == 0)
{
- value = "https://www.gnu.org"; /* fallback value */
+ distro_url = g_strdup("https://ubports.com");
}
- }
+ else
+ {
- distro_url = g_strdup(value);
- g_hash_table_destroy(os_release);
+ GHashTable * os_release = get_os_release();
+ gpointer value = g_hash_table_lookup(os_release, "SUPPORT_URL");
+
+ if (value == NULL)
+ {
+ value = g_hash_table_lookup(os_release, "HOME_URL");
+
+ if (value == NULL)
+ {
+ value = "https://www.gnu.org"; /* fallback value */
+ }
+ }
+
+ distro_url = g_strdup(value);
+ g_hash_table_destroy(os_release);
+ }
}
return distro_url;
@@ -125,12 +133,19 @@ get_distro_bts_url (void)
if (distro_bts_url == NULL)
{
- GHashTable * os_release = get_os_release();
- gpointer value = g_hash_table_lookup(os_release, "BUG_REPORT_URL");
- if (value == NULL)
- value = "https://github.com/AyatanaIndicators/ayatana-indicator-session/issues"; /* fallback value */
- distro_bts_url = g_strdup(value);
- g_hash_table_destroy(os_release);
+ if (g_strcmp0(get_desktop_session(), "ubuntu-touch") == 0)
+ {
+ distro_bts_url = g_strdup("https://gitlab.com/ubports/porting");
+ }
+ else
+ {
+ GHashTable * os_release = get_os_release();
+ gpointer value = g_hash_table_lookup(os_release, "BUG_REPORT_URL");
+ if (value == NULL)
+ value = "https://github.com/AyatanaIndicators/ayatana-indicator-session/issues"; /* fallback value */
+ distro_bts_url = g_strdup(value);
+ g_hash_table_destroy(os_release);
+ }
}
return distro_bts_url;