diff options
Diffstat (limited to 'libempathy-gtk/empathy-sound-manager.c')
-rw-r--r-- | libempathy-gtk/empathy-sound-manager.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-sound-manager.c b/libempathy-gtk/empathy-sound-manager.c index 600816f67..4f69c62db 100644 --- a/libempathy-gtk/empathy-sound-manager.c +++ b/libempathy-gtk/empathy-sound-manager.c @@ -23,6 +23,7 @@ #include <glib/gi18n-lib.h> #include "empathy-gsettings.h" +#include "empathy-presence-manager.h" #include "empathy-utils.h" #define DEBUG_FLAG EMPATHY_DEBUG_OTHER @@ -162,6 +163,23 @@ empathy_sound_manager_dup_singleton (void) } static gboolean +empathy_check_available_state (void) +{ + TpConnectionPresenceType presence; + EmpathyPresenceManager *presence_mgr; + + presence_mgr = empathy_presence_manager_dup_singleton (); + presence = empathy_presence_manager_get_state (presence_mgr); + g_object_unref (presence_mgr); + + if (presence != TP_CONNECTION_PRESENCE_TYPE_AVAILABLE && + presence != TP_CONNECTION_PRESENCE_TYPE_UNSET) + return FALSE; + + return TRUE; +} + +static gboolean empathy_sound_pref_is_enabled (EmpathySoundManager *self, EmpathySound sound_id) { |