handle single command and remove hacks used as substitute for it
mpd-git has single command, which provides functionality of both "repeat one" and "stop after current track" modes. repeat one = single && repeat stop after current track = single && !repeat
This commit is contained in:
@@ -164,6 +164,7 @@ void Connection::UpdateStatus()
|
||||
itsChanges.Crossfade = 1;
|
||||
itsChanges.Random = 1;
|
||||
itsChanges.Repeat = 1;
|
||||
itsChanges.Single = 1;
|
||||
itsChanges.PlayerState = 1;
|
||||
itsChanges.StatusFlags = 1;
|
||||
}
|
||||
@@ -178,8 +179,9 @@ void Connection::UpdateStatus()
|
||||
itsChanges.Crossfade = itsOldStatus->crossfade != itsCurrentStatus->crossfade;
|
||||
itsChanges.Random = itsOldStatus->random != itsCurrentStatus->random;
|
||||
itsChanges.Repeat = itsOldStatus->repeat != itsCurrentStatus->repeat;
|
||||
itsChanges.Single = itsOldStatus->single != itsCurrentStatus->single;
|
||||
itsChanges.PlayerState = itsOldStatus->state != itsCurrentStatus->state;
|
||||
itsChanges.StatusFlags = itsChanges.Repeat || itsChanges.Random || itsChanges.Crossfade || itsChanges.DBUpdating;
|
||||
itsChanges.StatusFlags = itsChanges.Repeat || itsChanges.Random || itsChanges.Single || itsChanges.Crossfade || itsChanges.DBUpdating;
|
||||
}
|
||||
itsUpdater(this, itsChanges, itsErrorHandlerUserdata);
|
||||
}
|
||||
@@ -482,6 +484,16 @@ void Connection::SetRandom(bool mode) const
|
||||
}
|
||||
}
|
||||
|
||||
void Connection::SetSingle(bool mode) const
|
||||
{
|
||||
if (isConnected)
|
||||
{
|
||||
mpd_sendSingleCommand(itsConnection, mode);
|
||||
if (!isCommandsListEnabled)
|
||||
mpd_finishCommand(itsConnection);
|
||||
}
|
||||
}
|
||||
|
||||
void Connection::SetVolume(int vol)
|
||||
{
|
||||
if (isConnected)
|
||||
|
||||
Reference in New Issue
Block a user