]> kaliko git repositories - mpd-sima.git/blobdiff - sima/core.py
Releasing 0.15.0
[mpd-sima.git] / sima / core.py
index 2ffb04c6e44c20ae7aedc564b212838b34a8361a..5ec0492f5b9c0f9dd9443e93cca49655a335d462 100644 (file)
@@ -31,6 +31,7 @@ from .lib.simadb import SimaDB
 from .lib.daemon import Daemon
 from .utils.utils import SigHup
 
+
 class Sima(Daemon):
     """Main class, plugin and player management
     """
@@ -73,7 +74,7 @@ class Sima(Daemon):
 
     def foreach_plugin(self, method, *args, **kwds):
         """Plugin's callbacks dispatcher"""
-        self.log.trace('dispatching %s to plugins', method)
+        self.log.trace('dispatching %s to plugins', method)  # pylint: disable=no-member
         for plugin in self.core_plugins:
             getattr(plugin, method)(*args, **kwds)
         for plugin in self.plugins:
@@ -93,9 +94,13 @@ class Sima(Daemon):
         if not self.enabled:
             self.log.debug('Queueing disabled!')
             return False
-        queue = self.player.queue
         queue_trigger = self.config.getint('sima', 'queue_length')
-        self.log.debug('Currently %s track(s) ahead. (target %s)', len(queue), queue_trigger)
+        if self.player.playmode.get('random'):
+            queue = self.player.playlist
+            self.log.debug('Currently %s track(s) in the playlist. (target %s)', len(queue), queue_trigger)
+        else:
+            queue = self.player.queue
+            self.log.debug('Currently %s track(s) ahead. (target %s)', len(queue), queue_trigger)
         if len(queue) < queue_trigger:
             return True
         return False