diff options
author | Sebastien Bacher <seb128@ubuntu.com> | 2012-07-12 20:07:41 +0200 |
---|---|---|
committer | Sebastien Bacher <seb128@ubuntu.com> | 2012-07-12 20:07:41 +0200 |
commit | f9fad5d468279e2d315a7759b37eec17bdd7b327 (patch) | |
tree | 6b25e32aea02468261a63a8cf1d24ad9c170c40e /src/volume-widget.c | |
parent | b68112634c6721221dc7b82e04f798378e26bb9e (diff) | |
parent | 612866753e2b554abb0b448ae6a8c8ce1c2f4d87 (diff) | |
download | ayatana-indicator-sound-f9fad5d468279e2d315a7759b37eec17bdd7b327.tar.gz ayatana-indicator-sound-f9fad5d468279e2d315a7759b37eec17bdd7b327.tar.bz2 ayatana-indicator-sound-f9fad5d468279e2d315a7759b37eec17bdd7b327.zip |
* New upstream release.
- Allow setting preferred media players through a settings key.
- Fix sound indicator not working after Amarok close.
- Explicit handling of Ardour
- Fix deprecated GTK+ API calls
* debian/patches/lp_992262.patch:
* debian/patches/lp_902715.patch:
- dropped, the fix is in the new version
Diffstat (limited to 'src/volume-widget.c')
-rw-r--r-- | src/volume-widget.c | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/src/volume-widget.c b/src/volume-widget.c index ac603c1..1258c20 100644 --- a/src/volume-widget.c +++ b/src/volume-widget.c @@ -135,16 +135,28 @@ volume_widget_property_update( DbusmenuMenuitem* item, gchar* property, if(g_ascii_strcasecmp(DBUSMENU_VOLUME_MENUITEM_LEVEL, property) == 0){ g_return_if_fail (g_variant_is_of_type (value, G_VARIANT_TYPE_DOUBLE) ); + gdouble update = g_variant_get_double (value); + if(priv->grabbed == FALSE){ GtkWidget *slider = ido_scale_menu_item_get_scale((IdoScaleMenuItem*)priv->ido_volume_slider); GtkRange *range = (GtkRange*)slider; - gdouble update = g_variant_get_double (value); gtk_range_set_value(range, update); /* g_debug ("volume-widget::volume_widget_property_update - volume - value %f", update); -*/ - update_accessible_desc(priv->indicator); + AtkObject* atk_object; + atk_object = gtk_widget_get_accessible (priv->ido_volume_slider); + if (atk_object != NULL){ + atk_object_set_name (atk_object, desc); + + }*/ } + gchar* desc = g_strdup_printf(_("Volume (%'.0f%%)"), + update); + dbusmenu_menuitem_property_set (priv->twin_item, + DBUSMENU_MENUITEM_PROP_ACCESSIBLE_DESC, + desc); + g_free (desc); + update_accessible_desc(priv->indicator); } else if(g_ascii_strcasecmp(DBUSMENU_VOLUME_MENUITEM_MUTE, property) == 0){ g_return_if_fail (g_variant_is_of_type (value, G_VARIANT_TYPE_BOOLEAN)); @@ -196,6 +208,13 @@ volume_widget_set_twin_item(VolumeWidget* self, initial_level = 0; } gtk_range_set_value(range, initial_level); + gchar* desc = g_strdup_printf(_("Volume (%'.0f%%)"), + initial_level); + dbusmenu_menuitem_property_set (priv->twin_item, + DBUSMENU_MENUITEM_PROP_ACCESSIBLE_DESC, + desc); + g_free (desc); + } static gboolean |