add support for 'replay' function (play current song from the beginning)

This commit is contained in:
Andrzej Rybczak
2010-08-13 06:31:58 +02:00
parent 342521459c
commit 35ddbe351a
5 changed files with 23 additions and 1 deletions

View File

@@ -172,6 +172,7 @@ void Help::GetKeybindings()
*w << DisplayKeys(Key.Pause) << "Pause\n";
*w << DisplayKeys(Key.Next) << "Next track\n";
*w << DisplayKeys(Key.Prev) << "Previous track\n";
*w << DisplayKeys(Key.Replay) << "Play current track from the beginning\n";
*w << DisplayKeys(Key.SeekForward) << "Seek forward\n";
*w << DisplayKeys(Key.SeekBackward) << "Seek backward\n";
*w << DisplayKeys(Key.VolumeDown) << "Decrease volume\n";

View File

@@ -551,7 +551,13 @@ int main(int argc, char *argv[])
design_changed = 1;
resize_screen();
}
else if (Keypressed(input, Key.GoToParentDir))
else if (Keypressed(input, Key.GoToParentDir)
&& (myScreen == myBrowser
# ifdef HAVE_TAGLIB_H
|| myScreen == myTagEditor
# endif // HAVE_TAGLIB_H
)
)
{
if (myScreen == myBrowser && myBrowser->CurrentDir() != "/")
{
@@ -797,6 +803,14 @@ int main(int argc, char *argv[])
}
}
}
else if (Keypressed(input, Key.Replay))
{
if (Mpd.isPlaying())
{
Mpd.Seek(0);
UpdateStatusImmediately = 1;
}
}
else if (Keypressed(input, Key.Prev))
{
Mpd.Prev();

View File

@@ -184,6 +184,7 @@ void NcmpcppKeys::SetDefaults()
Pause[0] = 'P';
Next[0] = '>';
Prev[0] = '<';
Replay[0] = KEY_BACKSPACE;
SeekForward[0] = 'f';
SeekBackward[0] = 'b';
ToggleRepeat[0] = 'r';
@@ -268,6 +269,7 @@ void NcmpcppKeys::SetDefaults()
Pause[1] = NullKey;
Next[1] = NullKey;
Prev[1] = NullKey;
Replay[1] = 127;
SeekForward[1] = NullKey;
SeekBackward[1] = NullKey;
ToggleRepeat[1] = NullKey;
@@ -503,6 +505,8 @@ void NcmpcppKeys::Read()
GetKeys(key, Next);
else if (key.find("key_prev ") != std::string::npos)
GetKeys(key, Prev);
else if (key.find("key_replay ") != std::string::npos)
GetKeys(key, Replay);
else if (key.find("key_seek_forward ") != std::string::npos)
GetKeys(key, SeekForward);
else if (key.find("key_seek_backward ") != std::string::npos)

View File

@@ -89,6 +89,7 @@ struct NcmpcppKeys
int Pause[2];
int Next[2];
int Prev[2];
int Replay[2];
int SeekForward[2];
int SeekBackward[2];
int ToggleRepeat[2];