ayatana-commits team mailing list archive
-
ayatana-commits team
-
Mailing list archive
-
Message #02572
[Merge] lp:~cjcurran/indicator-sound/initial-state-update into lp:indicator-sound
Conor Curran has proposed merging lp:~cjcurran/indicator-sound/initial-state-update into lp:indicator-sound.
Requested reviews:
Indicator Applet Developers (indicator-applet-developers)
Related bugs:
#656947 Sound indicator works incorrect with playing status
https://bugs.launchpad.net/bugs/656947
Fixes the bug attached.
--
https://code.launchpad.net/~cjcurran/indicator-sound/initial-state-update/+merge/39444
Your team ayatana-commits is subscribed to branch lp:indicator-sound.
=== modified file 'src/metadata-widget.c'
--- src/metadata-widget.c 2010-10-04 16:07:46 +0000
+++ src/metadata-widget.c 2010-10-27 13:26:43 +0000
@@ -511,10 +511,35 @@
metadata_widget_set_twin_item(MetadataWidget* self,
DbusmenuMenuitem* twin_item)
{
- MetadataWidgetPrivate* priv = METADATA_WIDGET_GET_PRIVATE(self);
- priv->twin_item = twin_item;
- g_signal_connect(G_OBJECT(priv->twin_item), "property-changed",
- G_CALLBACK(metadata_widget_property_update), self);
+ MetadataWidgetPrivate* priv = METADATA_WIDGET_GET_PRIVATE(self);
+ priv->twin_item = twin_item;
+ g_signal_connect( G_OBJECT(priv->twin_item), "property-changed",
+ G_CALLBACK(metadata_widget_property_update), self);
+ gtk_label_set_text( GTK_LABEL(priv->container_label),
+ dbusmenu_menuitem_property_get( priv->twin_item,
+ DBUSMENU_METADATA_MENUITEM_ALBUM));
+ metadata_widget_style_labels( self, GTK_LABEL(priv->container_label));
+
+ gtk_label_set_text( GTK_LABEL(priv->piece_label),
+ dbusmenu_menuitem_property_get( priv->twin_item,
+ DBUSMENU_METADATA_MENUITEM_TITLE));
+ metadata_widget_style_labels( self, GTK_LABEL(priv->piece_label));
+ gtk_label_set_text( GTK_LABEL(priv->artist_label),
+ dbusmenu_menuitem_property_get( priv->twin_item,
+ DBUSMENU_METADATA_MENUITEM_ARTIST));
+ metadata_widget_style_labels( self, GTK_LABEL(priv->artist_label));
+
+ g_string_erase(priv->image_path, 0, -1);
+ g_string_overwrite( priv->image_path,
+ 0,
+ dbusmenu_menuitem_property_get( priv->twin_item,
+ DBUSMENU_METADATA_MENUITEM_ARTURL ));
+
+ // if its a remote image queue a redraw incase the download took too long
+ if (g_str_has_prefix (dbusmenu_menuitem_property_get (priv->twin_item, DBUSMENU_METADATA_MENUITEM_ARTURL ),
+ g_get_user_cache_dir())){
+ gtk_widget_queue_draw(GTK_WIDGET(self));
+ }
}
=== modified file 'src/mpris2-controller.vala'
--- src/mpris2-controller.vala 2010-10-14 11:45:32 +0000
+++ src/mpris2-controller.vala 2010-10-27 13:26:43 +0000
@@ -84,7 +84,7 @@
this.properties_interface = (FreeDesktopProperties) connection.get_object("org.freedesktop.Properties.PropertiesChanged",
"/org/mpris/MediaPlayer2");
this.properties_interface.PropertiesChanged += property_changed_cb;
-
+
} catch (DBus.Error e) {
error("Problems connecting to the session bus - %s", e.message);
}
@@ -150,8 +150,8 @@
}
else{
update = determine_play_state(this.player.PlaybackStatus);
- }
- (this.owner.custom_items[PlayerController.widget_order.TRANSPORT] as TransportMenuitem).change_play_state(update);
+ }
+ (this.owner.custom_items[PlayerController.widget_order.TRANSPORT] as TransportMenuitem).change_play_state(update);
GLib.HashTable<string, Value?> cleaned_metadata = this.clean_metadata();
this.owner.custom_items[PlayerController.widget_order.METADATA].update(cleaned_metadata,
MetadataMenuitem.attributes_format());
=== modified file 'src/player-controller.vala'
--- src/player-controller.vala 2010-10-14 11:45:32 +0000
+++ src/player-controller.vala 2010-10-27 13:26:43 +0000
@@ -178,9 +178,8 @@
if(this.mpris_bridge.connected() == true){
this.update_state(state.CONNECTED);
TitleMenuitem title = this.custom_items[widget_order.TITLE] as TitleMenuitem;
- title.toggle_active_triangle(true);
- TransportMenuitem transport = this.custom_items[widget_order.TRANSPORT] as TransportMenuitem;
- transport.change_play_state(TransportMenuitem.state.PAUSED);
+ title.toggle_active_triangle(true);
+ this.mpris_bridge.initial_update();
}
else{
this.update_state(state.DISCONNECTED);
=== modified file 'src/sound-service.c'
--- src/sound-service.c 2010-10-07 11:00:00 +0000
+++ src/sound-service.c 2010-10-27 13:26:43 +0000
@@ -41,8 +41,8 @@
if (mainloop != NULL) {
g_debug("Service shutdown !");
//TODO: uncomment for release !!
- close_pulse_activites();
- g_main_loop_quit(mainloop);
+ //close_pulse_activites();
+ //g_main_loop_quit(mainloop);
}
return;
}
=== modified file 'src/transport-menu-item.vala'
--- src/transport-menu-item.vala 2010-09-02 22:21:00 +0000
+++ src/transport-menu-item.vala 2010-10-27 13:26:43 +0000
@@ -42,6 +42,8 @@
public void change_play_state(state update)
{
+ debug("UPDATING THE TRANSPORT DBUSMENUITEM PLAY STATE WITH VALUE %i",
+ (int)update);
this.property_set_int(MENUITEM_PLAY_STATE, update);
}
@@ -60,5 +62,4 @@
return attrs;
}
-
}
\ No newline at end of file
=== modified file 'src/transport-widget.c'
--- src/transport-widget.c 2010-10-01 11:18:08 +0000
+++ src/transport-widget.c 2010-10-27 13:26:43 +0000
@@ -1272,6 +1272,11 @@
priv->twin_item = twin_item;
g_signal_connect(G_OBJECT(priv->twin_item), "property-changed",
G_CALLBACK(transport_widget_property_update), self);
+ gint initial_state = dbusmenu_menuitem_property_get_int( twin_item,
+ DBUSMENU_TRANSPORT_MENUITEM_PLAY_STATE );
+ g_debug("TRANSPORT WIDGET - INITIAL UPDATE = %i", initial_state);
+ transport_widget_toggle_play_pause( self,
+ (TransportWidgetState)initial_state);
}
/**
@@ -1290,8 +1295,7 @@
{
int update_value = g_value_get_int(value);
//g_debug("transport_widget_update_state - with value %i", update_value);
- transport_widget_toggle_play_pause(bar,
- (TransportWidgetState)update_value);
+ transport_widget_toggle_play_pause(bar, (TransportWidgetState)update_value);
}
}
Follow ups