listen to Rhythmbox's changing stream titles. fixes #3013
This commit is contained in:
parent
9a851c3b0d
commit
a0d6f20f24
|
@ -61,6 +61,8 @@ class MusicTrackListener(gobject.GObject):
|
|||
'NameOwnerChanged', 'org.freedesktop.DBus', arg0='org.gnome.Rhythmbox')
|
||||
bus.add_signal_receiver(self._player_playing_changed_cb,
|
||||
'playingChanged', 'org.gnome.Rhythmbox.Player')
|
||||
bus.add_signal_receiver(self._player_playing_song_property_changed_cb,
|
||||
'playingSongPropertyChanged', 'org.gnome.Rhythmbox.Player')
|
||||
|
||||
## Banshee
|
||||
banshee_bus = dbus.SessionBus()
|
||||
|
@ -86,7 +88,6 @@ class MusicTrackListener(gobject.GObject):
|
|||
self.banshee_is_here = False
|
||||
return True
|
||||
|
||||
|
||||
def _get_banshee_bus(self):
|
||||
bus = dbus.SessionBus()
|
||||
banshee = bus.get_object('org.gnome.Banshee', '/org/gnome/Banshee/Player')
|
||||
|
@ -106,6 +107,10 @@ class MusicTrackListener(gobject.GObject):
|
|||
else:
|
||||
self.emit('music-track-changed', None)
|
||||
|
||||
def _player_playing_song_property_changed_cb(self, a, b, c, d):
|
||||
if b == 'rb:stream-song-title':
|
||||
self.emit('music-track-changed', self._last_playing_music)
|
||||
|
||||
def _muine_properties_extract(self, song_string):
|
||||
d = dict((x.strip() for x in s1.split(':', 1)) for s1 in \
|
||||
song_string.split('\n'))
|
||||
|
|
Loading…
Reference in New Issue