From 31f2b736cc064a959d468deda6168a07151c2229 Mon Sep 17 00:00:00 2001 From: James Barnsley Date: Mon, 30 Oct 2017 11:59:45 +1300 Subject: [PATCH] Window title track --- src/js/helpers.js | 20 +++++++++++++------- src/js/services/core/middleware.js | 2 +- src/js/services/ui/middleware.js | 13 +++++++++++-- 3 files changed, 25 insertions(+), 10 deletions(-) diff --git a/src/js/helpers.js b/src/js/helpers.js index 5f063ce6..cc940b13 100755 --- a/src/js/helpers.js +++ b/src/js/helpers.js @@ -584,22 +584,28 @@ export let isNumeric = function (data){ **/ export let setWindowTitle = function (track = false, play_state = false){ + console.log(track); + var title = 'No track playing' if (track){ - var icon = '\u25A0 ' - var artistString = '' + var icon = '\u25A0 '; + var artist_string = ''; if (track.artists){ - for(var i = 0; i < track.artists.length; i++){ - if (artistString != '') artistString += ', ' - artistString += track.artists[i].name + for (var i = 0; i < track.artists.length; i++){ + if (artist_string != ''){ + artist_string += ', '; + } + artist_string += track.artists[i].name } } - if (play_state && play_state == 'playing') icon = '\u25B6 ' + if (play_state && play_state == 'playing'){ + icon = '\u25B6 '; + } - title = icon +' '+ track.name +' - '+ artistString + title = icon +' '+ track.name +' - '+ artist_string; } document.title = title diff --git a/src/js/services/core/middleware.js b/src/js/services/core/middleware.js index bbb755bc..63326fe8 100755 --- a/src/js/services/core/middleware.js +++ b/src/js/services/core/middleware.js @@ -272,7 +272,7 @@ const CoreMiddleware = (function(){ case 'MOPIDY_CURRENTTLTRACK': if (action.data && action.data.track){ - helpers.setWindowTitle(action.data.track, store.getState().mopidy.play_state) + helpers.setWindowTitle(action.data.track, store.getState().mopidy.play_state); // make sure our images use mopidy host:port if (action.data.track.album && action.data.track.album.images && action.data.track.album.images.length > 0){ diff --git a/src/js/services/ui/middleware.js b/src/js/services/ui/middleware.js index 8e8bc9c6..409d2679 100755 --- a/src/js/services/ui/middleware.js +++ b/src/js/services/ui/middleware.js @@ -15,8 +15,17 @@ const UIMiddleware = (function(){ switch(action.type){ case 'MOPIDY_STATE': - helpers.setWindowTitle(store.getState().core.current_track, action.data) - next(action) + + // Get the current track from our index + var tracks = store.getState().core.tracks; + var current_track_uri = store.getState().core.current_track; + var current_track = null; + if (tracks[current_track_uri] !== undefined){ + current_track = tracks[current_track_uri]; + } + + helpers.setWindowTitle(current_track, action.data); + next(action); break case 'OPEN_MODAL':