mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-13 18:17:39 -04:00
Make the Play / Pause option restart playback if its stopped also
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12738 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
6f2bb422c0
commit
6e44209a4c
3 changed files with 17 additions and 2 deletions
|
@ -484,6 +484,9 @@ static const struct plugin_api rockbox_api = {
|
|||
detect_flashed_ramimage,
|
||||
detect_flashed_romimage,
|
||||
#endif
|
||||
playlist_resume,
|
||||
playlist_start,
|
||||
&global_status,
|
||||
};
|
||||
|
||||
int plugin_load(const char* plugin, void* parameter)
|
||||
|
|
|
@ -110,7 +110,7 @@
|
|||
#define PLUGIN_MAGIC 0x526F634B /* RocK */
|
||||
|
||||
/* increase this every time the api struct changes */
|
||||
#define PLUGIN_API_VERSION 47
|
||||
#define PLUGIN_API_VERSION 48
|
||||
|
||||
/* update this to latest version if a change to the api struct breaks
|
||||
backwards compatibility (and please take the opportunity to sort in any
|
||||
|
@ -598,6 +598,9 @@ struct plugin_api {
|
|||
bool (*detect_flashed_ramimage)(void);
|
||||
bool (*detect_flashed_romimage)(void);
|
||||
#endif
|
||||
int (*playlist_resume)(void);
|
||||
int (*playlist_start)(int start_index, int offset);
|
||||
struct system_status *global_status;
|
||||
};
|
||||
|
||||
/* plugin header */
|
||||
|
|
|
@ -29,7 +29,16 @@ bool prevtrack(void)
|
|||
|
||||
bool play(void)
|
||||
{
|
||||
if (api->audio_status() & AUDIO_STATUS_PAUSE)
|
||||
int audio_status = api->audio_status();
|
||||
if (!audio_status && api->global_status->resume_index != -1)
|
||||
{
|
||||
if (api->playlist_resume() != -1)
|
||||
{
|
||||
api->playlist_start(api->global_status->resume_index,
|
||||
api->global_status->resume_offset);
|
||||
}
|
||||
}
|
||||
else if (audio_status & AUDIO_STATUS_PAUSE)
|
||||
api->audio_resume();
|
||||
else
|
||||
api->audio_pause();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue