[empathy] CallWindow: fix toggling the microphone on and off
- From: Emilio Pozuelo Monfort <epm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [empathy] CallWindow: fix toggling the microphone on and off
- Date: Mon, 15 Aug 2011 08:47:34 +0000 (UTC)
commit 7660dd99c14c92e097eceade559297b8d569e34d
Author: Emilio Pozuelo Monfort <emilio pozuelo collabora co uk>
Date: Fri Aug 12 14:45:50 2011 +0100
CallWindow: fix toggling the microphone on and off
We are changing the GSettings key, and also listening to changes
on it and reacting to them, but we don't want to react to our own
changes!
https://bugzilla.gnome.org/show_bug.cgi?id=656415
src/empathy-call-window.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
---
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index 3398a7b..e2e103c 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -2848,13 +2848,18 @@ empathy_call_window_set_send_video (EmpathyCallWindow *window,
static void
empathy_call_window_mic_toggled_cb (GtkToggleToolButton *toggle,
- EmpathyCallWindow *window)
+ EmpathyCallWindow *self)
{
- EmpathyCallWindowPriv *priv = GET_PRIV (window);
+ EmpathyCallWindowPriv *priv = GET_PRIV (self);
gboolean active;
active = (gtk_toggle_tool_button_get_active (toggle));
+ /* We don't want the settings callback to react to this change to avoid
+ * a loop. */
+ g_signal_handlers_block_by_func (priv->settings,
+ empathy_call_window_prefs_volume_changed_cb, self);
+
if (active)
{
g_settings_set_double (priv->settings, EMPATHY_PREFS_CALL_SOUND_VOLUME,
@@ -2870,6 +2875,9 @@ empathy_call_window_mic_toggled_cb (GtkToggleToolButton *toggle,
g_settings_set_double (priv->settings, EMPATHY_PREFS_CALL_SOUND_VOLUME,
0);
}
+
+ g_signal_handlers_unblock_by_func (priv->settings,
+ empathy_call_window_prefs_volume_changed_cb, self);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]