diff --git a/src/libtomahawk/audio/audioengine.cpp b/src/libtomahawk/audio/audioengine.cpp index 7231e3a72..dcde13d61 100644 --- a/src/libtomahawk/audio/audioengine.cpp +++ b/src/libtomahawk/audio/audioengine.cpp @@ -313,7 +313,7 @@ AudioEngine::playItem( PlaylistInterface* playlist, const Tomahawk::result_ptr& clearBuffers(); - m_playlist = playlist; + setPlaylist( playlist ); m_currentTrackPlaylist = playlist; loadTrack( result ); @@ -372,6 +372,14 @@ AudioEngine::clearBuffers() } +void +AudioEngine::setPlaylist( PlaylistInterface* playlist ) +{ + m_playlist = playlist; + emit playlistChanged( playlist ); +} + + void AudioEngine::setCurrentTrack( const Tomahawk::result_ptr& result ) { diff --git a/src/libtomahawk/audio/audioengine.h b/src/libtomahawk/audio/audioengine.h index b83eb9bf1..372550e8d 100644 --- a/src/libtomahawk/audio/audioengine.h +++ b/src/libtomahawk/audio/audioengine.h @@ -56,7 +56,7 @@ public slots: void mute(); void playItem( PlaylistInterface* playlist, const Tomahawk::result_ptr& result ); - void setPlaylist( PlaylistInterface* playlist ) { m_playlist = playlist; } + void setPlaylist( PlaylistInterface* playlist ); void setQueue( PlaylistInterface* queue ) { m_queue = queue; } void onTrackAboutToClose(); @@ -74,6 +74,8 @@ signals: void timerSeconds( unsigned int secondsElapsed ); void timerPercentage( unsigned int percentage ); + void playlistChanged( PlaylistInterface* playlist ); + void error( AudioErrorCode errorCode ); private slots: