FEATURE: Add shuffle functionality

Adds the toggling the shuffle functionality.
Solves #16.
This commit is contained in:
Hayri Bakici 2021-04-13 13:41:06 +02:00
parent 7590da3f44
commit 0fd7655011
2 changed files with 23 additions and 1 deletions

View file

@ -9,12 +9,13 @@ __all__ = (
'NextTrack',
'Shutdown',
'Tracklist',
'ToggleShuffle',
'Volume',
)
from .playback import PlayPause, Stop, PreviousTrack, NextTrack
from .shutdown import Shutdown
from .tracklist import Tracklist
from .tracklist import Tracklist, ToggleShuffle
from .volume import Volume
ACTIONS = {}

View file

@ -4,6 +4,7 @@ Python module for Mopidy Pummeluff tracklist tag.
__all__ = (
'Tracklist',
'ToggleShuffle',
)
from logging import getLogger
@ -39,3 +40,23 @@ class Tracklist(Action):
core.tracklist.clear()
core.tracklist.add(uris=uris)
core.playback.play()
class ToggleShuffle(Action):
'''
Toggles random mode
'''
@classmethod
def execute(cls, core):
'''
Toggle random mode.
:param mopidy.core.Core core: The mopidy core instance
'''
shuffle = core.tracklist.get_random().get()
shuffle = not shuffle
core.tracklist.set_random(shuffle)
LOGGER.info('Toggling shuffle mode [%s]', shuffle)