another fix

This commit is contained in:
unknown
2008-08-10 05:09:47 +02:00
parent 591776d932
commit 332c539528
3 changed files with 26 additions and 8 deletions

View File

@@ -1228,6 +1228,15 @@ int main(int argc, char *argv[])
mPlaylist->BoldOption(pos, 1);
mPlaylist->BoldOption(pos+1, 0);
}
else
{
if (pos-1 == now_playing)
{
now_playing++;
mPlaylist->BoldOption(pos, 0);
mPlaylist->BoldOption(pos+1, 1);
}
}
mPlaylist->UpdateOption(pos, DisplaySong(*vPlaylist[pos-1]));
mPlaylist->UpdateOption(pos+1, DisplaySong(*vPlaylist[pos]));
mpd_playlist_move_pos(conn, pos, pos-1);
@@ -1245,8 +1254,17 @@ int main(int argc, char *argv[])
if (pos == now_playing)
{
now_playing++;
mPlaylist->BoldOption(pos+2, 1);
mPlaylist->BoldOption(pos+1, 0);
mPlaylist->BoldOption(pos+2, 1);
}
else
{
if (pos+1 == now_playing)
{
now_playing--;
mPlaylist->BoldOption(pos+1, 1);
mPlaylist->BoldOption(pos+2, 0);
}
}
mPlaylist->UpdateOption(pos+2, DisplaySong(*vPlaylist[pos+1]));
mPlaylist->UpdateOption(pos+1, DisplaySong(*vPlaylist[pos]));

View File

@@ -111,9 +111,9 @@ void Song::Clear()
//itsPerformer.clear();
//itsDisc.clear();
itsComment.clear();
itsMinutesLength = 0;;
itsSecondsLength = 0;;
itsPosition = 0;;
itsMinutesLength = 0;
itsSecondsLength = 0;
itsPosition = 0;
itsID = 0;
}

View File

@@ -131,7 +131,7 @@ void NcmpcppStatusChanged(MpdObj *conn, ChangedStatusType what)
wFooter->Bold(1);
wFooter->GetXY(sx, sy);
if (now_playing != mpd_player_get_current_song_pos(conn) && !block_playlist_update)
if (now_playing != mpd_player_get_current_song_pos(conn) && what & MPD_CST_SONGID)
{
old_playing = now_playing;
now_playing = mpd_player_get_current_song_pos(conn);
@@ -194,6 +194,7 @@ void NcmpcppStatusChanged(MpdObj *conn, ChangedStatusType what)
(*it)->GetEmptyFields(1);
if (**it != ss)
{
(*it)->GetEmptyFields(0);
ss.GetEmptyFields(0);
**it = ss;
mPlaylist->UpdateOption(i, DisplaySong(ss));
@@ -394,10 +395,9 @@ void NcmpcppStatusChanged(MpdObj *conn, ChangedStatusType what)
}
if (what & MPD_CST_SONGID)
{
int id = mpd_player_get_current_song_pos(conn);
if (!vPlaylist.empty() && id >= 0)
if (!vPlaylist.empty() && now_playing >= 0)
{
Song &s = *vPlaylist[id];
Song &s = *vPlaylist[now_playing];
if (!mPlaylist->Empty())
{
if (old_playing >= 0)