From 5989cc6317691f5e73e8e2f8b41d1ead963ebf26 Mon Sep 17 00:00:00 2001 From: Andrzej Rybczak Date: Wed, 29 Aug 2012 19:36:59 +0200 Subject: [PATCH] status: fix current song update --- src/status.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/status.cpp b/src/status.cpp index f9c0c477..e56b8ad5 100644 --- a/src/status.cpp +++ b/src/status.cpp @@ -222,6 +222,10 @@ void NcmpcppStatusChanged(MPD::Connection *, MPD::StatusChanges changed, void *) if (changed.Playlist) { + np = Mpd.GetCurrentlyPlayingSong(); + if (!np.empty()) + WindowTitle(np.toString(Config.song_window_title_format)); + bool is_filtered = myPlaylist->Items->isFiltered(); myPlaylist->Items->ShowAll(); @@ -315,7 +319,8 @@ void NcmpcppStatusChanged(MPD::Connection *, MPD::StatusChanges changed, void *) } case MPD::psPlay: { - //WindowTitle(utf_to_locale_cpy(np.toString(Config.song_window_title_format))); + if (!np.empty()) + WindowTitle(np.toString(Config.song_window_title_format)); player_state = Config.new_design ? "[playing]" : "Playing: "; Playlist::ReloadRemaining = true; if (Mpd.GetOldState() == MPD::psStop) // show track info in status immediately @@ -381,6 +386,13 @@ void NcmpcppStatusChanged(MPD::Connection *, MPD::StatusChanges changed, void *) Lyrics::DownloadInBackground(myPlaylist->NowPlayingSong()); # endif // HAVE_CURL_CURL_H + if (Mpd.isPlaying()) + { + np = Mpd.GetCurrentlyPlayingSong(); + if (!np.empty()) + WindowTitle(np.toString(Config.song_window_title_format)); + } + if (Config.autocenter_mode && !myPlaylist->Items->isFiltered()) myPlaylist->Items->Highlight(myPlaylist->NowPlaying);