From 9fc7eaadbf24f1091b89b1c4c6bda382456b7537 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Tue, 25 May 2021 13:56:39 +0200 Subject: src/utils.(ch): Add ayatana_common_utils_have_*_program() functions used in session indicator. --- src/utils.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/utils.h | 7 +++++++ 2 files changed, 62 insertions(+) (limited to 'src') diff --git a/src/utils.c b/src/utils.c index b5a9690..d735172 100644 --- a/src/utils.c +++ b/src/utils.c @@ -89,6 +89,61 @@ ayatana_common_utils_is_budgie () return is_xdg_current_desktop(DESKTOP_BUDGIE); } +gboolean +ayatana_common_utils_have_unity_program (const gchar *program) +{ + if (!ayatana_common_utils_is_unity()) + return FALSE; + + return ayatana_common_utils_have_program(program); +} + +gboolean +ayatana_common_utils_have_gnome_program (const gchar *program) +{ + if (!ayatana_common_utils_is_gnome()) + return FALSE; + + return ayatana_common_utils_have_program(program); +} + +gboolean +ayatana_common_utils_have_mate_program (const gchar *program) +{ + if (!ayatana_common_utils_is_mate()) + return FALSE; + + return ayatana_common_utils_have_program(program); +} + +gboolean +ayatana_common_utils_have_xfce_program (const gchar *program) +{ + if (!ayatana_common_utils_is_xfce()) + return FALSE; + + return ayatana_common_utils_have_program(program); +} + +gboolean +ayatana_common_utils_have_pantheon_program (const gchar *program) +{ + if (!ayatana_common_utils_is_pantheon()) + return FALSE; + + return ayatana_common_utils_have_program(program); +} + +gboolean +ayatana_common_utils_have_budgie_program (const gchar *program) +{ + if (!ayatana_common_utils_is_budgie()) + return FALSE; + + return ayatana_common_utils_have_program(program); +} + + // Bit of a hacky way? should use xdg open char * find_browser () diff --git a/src/utils.h b/src/utils.h index 7301499..0fa643b 100644 --- a/src/utils.h +++ b/src/utils.h @@ -36,6 +36,13 @@ gboolean ayatana_common_utils_is_xfce(); gboolean ayatana_common_utils_is_pantheon(); gboolean ayatana_common_utils_is_budgie(); +gboolean ayatana_common_utils_have_unity_program (const gchar *program); +gboolean ayatana_common_utils_have_gnome_program (const gchar *program); +gboolean ayatana_common_utils_have_mate_program (const gchar *program); +gboolean ayatana_common_utils_have_xfce_program (const gchar *program); +gboolean ayatana_common_utils_have_pantheon_program (const gchar *program); +gboolean ayatana_common_utils_have_budgie_program (const gchar *program); + gboolean ayatana_common_utils_execute_command(const gchar * cmd); gboolean ayatana_common_utils_open_url(const gchar * url); gboolean ayatana_common_utils_have_program(const gchar * program); -- cgit v1.2.3