add support for 'replay' function (play current song from the beginning)
This commit is contained in:
2
doc/keys
2
doc/keys
@@ -82,6 +82,8 @@
|
|||||||
#
|
#
|
||||||
#key_prev = '<'
|
#key_prev = '<'
|
||||||
#
|
#
|
||||||
|
#key_replay = 263 127
|
||||||
|
#
|
||||||
#key_seek_forward = 'f'
|
#key_seek_forward = 'f'
|
||||||
#
|
#
|
||||||
#key_seek_backward = 'b'
|
#key_seek_backward = 'b'
|
||||||
|
|||||||
@@ -172,6 +172,7 @@ void Help::GetKeybindings()
|
|||||||
*w << DisplayKeys(Key.Pause) << "Pause\n";
|
*w << DisplayKeys(Key.Pause) << "Pause\n";
|
||||||
*w << DisplayKeys(Key.Next) << "Next track\n";
|
*w << DisplayKeys(Key.Next) << "Next track\n";
|
||||||
*w << DisplayKeys(Key.Prev) << "Previous 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.SeekForward) << "Seek forward\n";
|
||||||
*w << DisplayKeys(Key.SeekBackward) << "Seek backward\n";
|
*w << DisplayKeys(Key.SeekBackward) << "Seek backward\n";
|
||||||
*w << DisplayKeys(Key.VolumeDown) << "Decrease volume\n";
|
*w << DisplayKeys(Key.VolumeDown) << "Decrease volume\n";
|
||||||
|
|||||||
@@ -551,7 +551,13 @@ int main(int argc, char *argv[])
|
|||||||
design_changed = 1;
|
design_changed = 1;
|
||||||
resize_screen();
|
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() != "/")
|
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))
|
else if (Keypressed(input, Key.Prev))
|
||||||
{
|
{
|
||||||
Mpd.Prev();
|
Mpd.Prev();
|
||||||
|
|||||||
@@ -184,6 +184,7 @@ void NcmpcppKeys::SetDefaults()
|
|||||||
Pause[0] = 'P';
|
Pause[0] = 'P';
|
||||||
Next[0] = '>';
|
Next[0] = '>';
|
||||||
Prev[0] = '<';
|
Prev[0] = '<';
|
||||||
|
Replay[0] = KEY_BACKSPACE;
|
||||||
SeekForward[0] = 'f';
|
SeekForward[0] = 'f';
|
||||||
SeekBackward[0] = 'b';
|
SeekBackward[0] = 'b';
|
||||||
ToggleRepeat[0] = 'r';
|
ToggleRepeat[0] = 'r';
|
||||||
@@ -268,6 +269,7 @@ void NcmpcppKeys::SetDefaults()
|
|||||||
Pause[1] = NullKey;
|
Pause[1] = NullKey;
|
||||||
Next[1] = NullKey;
|
Next[1] = NullKey;
|
||||||
Prev[1] = NullKey;
|
Prev[1] = NullKey;
|
||||||
|
Replay[1] = 127;
|
||||||
SeekForward[1] = NullKey;
|
SeekForward[1] = NullKey;
|
||||||
SeekBackward[1] = NullKey;
|
SeekBackward[1] = NullKey;
|
||||||
ToggleRepeat[1] = NullKey;
|
ToggleRepeat[1] = NullKey;
|
||||||
@@ -503,6 +505,8 @@ void NcmpcppKeys::Read()
|
|||||||
GetKeys(key, Next);
|
GetKeys(key, Next);
|
||||||
else if (key.find("key_prev ") != std::string::npos)
|
else if (key.find("key_prev ") != std::string::npos)
|
||||||
GetKeys(key, Prev);
|
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)
|
else if (key.find("key_seek_forward ") != std::string::npos)
|
||||||
GetKeys(key, SeekForward);
|
GetKeys(key, SeekForward);
|
||||||
else if (key.find("key_seek_backward ") != std::string::npos)
|
else if (key.find("key_seek_backward ") != std::string::npos)
|
||||||
|
|||||||
@@ -89,6 +89,7 @@ struct NcmpcppKeys
|
|||||||
int Pause[2];
|
int Pause[2];
|
||||||
int Next[2];
|
int Next[2];
|
||||||
int Prev[2];
|
int Prev[2];
|
||||||
|
int Replay[2];
|
||||||
int SeekForward[2];
|
int SeekForward[2];
|
||||||
int SeekBackward[2];
|
int SeekBackward[2];
|
||||||
int ToggleRepeat[2];
|
int ToggleRepeat[2];
|
||||||
|
|||||||
Reference in New Issue
Block a user