aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/indicator-sound.c14
-rw-r--r--src/indicator-sound.h3
-rw-r--r--src/volume-widget.c18
3 files changed, 19 insertions, 16 deletions
diff --git a/src/indicator-sound.c b/src/indicator-sound.c
index 6e1acc9..9e10f3a 100644
--- a/src/indicator-sound.c
+++ b/src/indicator-sound.c
@@ -640,3 +640,17 @@ indicator_sound_scroll (IndicatorObject *io, gint delta,
sound_state_manager_show_notification (priv->state_manager, value);
}
+
+void
+update_accessible_desc (IndicatorObject * io)
+{
+ GList *entries = indicator_object_get_entries(io);
+ IndicatorObjectEntry * entry = (IndicatorObjectEntry *)entries->data;
+ entry->accessible_desc = get_accessible_desc(io);
+ g_signal_emit(G_OBJECT(io),
+ INDICATOR_OBJECT_SIGNAL_ACCESSIBLE_DESC_UPDATE_ID,
+ 0,
+ entry,
+ TRUE);
+ g_list_free(entries);
+}
diff --git a/src/indicator-sound.h b/src/indicator-sound.h
index 40a3e6f..c945efa 100644
--- a/src/indicator-sound.h
+++ b/src/indicator-sound.h
@@ -53,4 +53,7 @@ struct _IndicatorSound {
// GObject Boiler plate
GType indicator_sound_get_type (void);
+// Update the accessible description
+void update_accessible_desc (IndicatorObject * io);
+
#endif
diff --git a/src/volume-widget.c b/src/volume-widget.c
index be97994..c45e93c 100644
--- a/src/volume-widget.c
+++ b/src/volume-widget.c
@@ -138,14 +138,7 @@ volume_widget_property_update( DbusmenuMenuitem* item, gchar* property,
gdouble update = g_variant_get_double (value);
//g_debug("volume-widget - update level with value %f", update);
gtk_range_set_value(range, update);
-
- GList *entry = indicator_object_get_entries(priv->indicator);
- g_signal_emit(G_OBJECT(priv->indicator),
- INDICATOR_OBJECT_SIGNAL_ACCESSIBLE_DESC_UPDATE_ID,
- 0,
- entry->data,
- TRUE);
- g_list_free(entry);
+ update_accessible_desc(priv->indicator);
}
}
}
@@ -165,14 +158,7 @@ volume_widget_set_twin_item(VolumeWidget* self,
GtkWidget *slider = ido_scale_menu_item_get_scale((IdoScaleMenuItem*)priv->ido_volume_slider);
GtkRange *range = (GtkRange*)slider;
gtk_range_set_value(range, initial_level);
-
- GList *entry = indicator_object_get_entries(priv->indicator);
- g_signal_emit(G_OBJECT(priv->indicator),
- INDICATOR_OBJECT_SIGNAL_ACCESSIBLE_DESC_UPDATE_ID,
- 0,
- entry->data,
- TRUE);
- g_list_free(entry);
+ update_accessible_desc(priv->indicator);
}
static gboolean