[gnome-music/wip/jfelder/mpris-playlists-cleanup: 7/7] mpris: Handle playlists renaming
- From: Jean Felder <jfelder src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music/wip/jfelder/mpris-playlists-cleanup: 7/7] mpris: Handle playlists renaming
- Date: Wed, 29 May 2019 16:36:17 +0000 (UTC)
commit b8dd06cf6bee9c7a449feb8fd55ef45a0179610b
Author: Jean Felder <jfelder src gnome org>
Date: Thu Apr 4 12:05:20 2019 +0200
mpris: Handle playlists renaming
Send a PlaylistChanged signal from the MediaPlayer2.Playlists
interface when a playlist is renamed.
gnomemusic/mpris.py | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
---
diff --git a/gnomemusic/mpris.py b/gnomemusic/mpris.py
index b92c378e..c6836727 100644
--- a/gnomemusic/mpris.py
+++ b/gnomemusic/mpris.py
@@ -251,6 +251,7 @@ class MediaPlayer2Service(Server):
'playlist-created', self._on_playlists_count_changed)
self._playlists.connect(
'playlist-deleted', self._on_playlists_count_changed)
+ self._playlists.connect('playlist-renamed', self._on_playlist_renamed)
grilo.connect('ready', self._on_grilo_ready)
self._stored_playlists = []
self._player_previous_type = None
@@ -517,6 +518,15 @@ class MediaPlayer2Service(Server):
def _on_playlists_count_changed(self, playlists, item):
self._reload_playlists()
+ @log
+ def _on_playlist_renamed(self, playlists, renamed_playlist):
+ mpris_playlist = self._get_mpris_playlist_from_playlist(
+ renamed_playlist)
+ self.con.emit_signal(
+ None, '/org/mpris/MediaPlayer2',
+ MPRIS.MEDIA_PLAYER2_PLAYLISTS_IFACE, 'PlaylistChanged',
+ GLib.Variant.new_tuple(GLib.Variant('(oss)', mpris_playlist)))
+
@log
def _on_grilo_ready(self, grilo):
self._reload_playlists()
@@ -668,13 +678,6 @@ class MediaPlayer2Service(Server):
first_index = None
return mpris_playlists[index + max_count - 1:first_index:-1]
- def PlaylistChanged(self, playlist):
- self.con.emit_signal(None,
- '/org/mpris/MediaPlayer2',
- MediaPlayer2Service.MEDIA_PLAYER2_PLAYLISTS_IFACE,
- 'PlaylistChanged',
- GLib.Variant.new_tuple(GLib.Variant('(oss)', playlist)))
-
def Get(self, interface_name, property_name):
return self.GetAll(interface_name)[property_name]
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]