[gnome-music/wip/jfelder/mpris-cleanup: 49/67] mpris: Simplify GetPlaylists method



commit b2bc1bbed796c550748961092035bbe782cc0dff
Author: Jean Felder <jfelder src gnome org>
Date:   Thu Mar 21 08:56:20 2019 +0100

    mpris: Simplify GetPlaylists method

 gnomemusic/mpris.py | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)
---
diff --git a/gnomemusic/mpris.py b/gnomemusic/mpris.py
index 365001c5..2a08ea05 100644
--- a/gnomemusic/mpris.py
+++ b/gnomemusic/mpris.py
@@ -652,13 +652,29 @@ class MPRIS(DBusInterface):
         self.app._window.views[View.PLAYLIST].activate_playlist(playlist_id)
 
     def GetPlaylists(self, index, max_count, order, reverse):
+        """Gets a set of playlists (MPRIS Method).
+
+        GNOME Music only handles playlists with the Alphabetical order.
+
+        :param int index: the index of the first playlist to be fetched
+        :param int max_count: the maximum number of playlists to fetch.
+        :param str order: the ordering that should be used.
+        :param bool reverse: whether the order should be reversed.
+        """
         if order != 'Alphabetical':
             return []
+
         playlists = [(self._get_playlist_dbus_path(playlist),
-                      utils.get_media_title(playlist) or '', '')
+                      utils.get_media_title(playlist), '')
                      for playlist in self.playlists]
-        return playlists[index:index + max_count] if not reverse \
-            else playlists[index + max_count - 1:index - 1 if index - 1 >= 0 else None:-1]
+
+        if not reverse:
+            return playlists[index:index + max_count]
+
+        first_index = index - 1
+        if first_index < 0:
+            first_index = None
+        return playlists[index + max_count - 1:first_index:-1]
 
     def PlaylistChanged(self, playlist):
         self.con.emit_signal(None,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]