diff options
author | Paul Sauro <olsroparadise@proton.me> | 2024-08-28 22:55:52 +0200 |
---|---|---|
committer | William Wilgus <me.theuser@yahoo.com> | 2024-08-31 10:44:20 -0400 |
commit | c16dbbfd1fb7bf4bc268a4693bbed21497456b30 (patch) | |
tree | 3faea1f6d294f5835f72075b9a27e996525aef0a /apps/gui/wps.c | |
parent | f6e8c20188276251d8b3ec512be81f2460ce39e7 (diff) | |
download | rockbox-c16dbbfd1fb7bf4bc268a4693bbed21497456b30.tar.gz rockbox-c16dbbfd1fb7bf4bc268a4693bbed21497456b30.zip |
Reworks to the shuffle system to improve performance and allow fast shuffling from a big library (but this work for all database views)
This improvement brings a huge performance improvement to start a random mix of your library. Previously, the only way to do this was to increase the size of a playlist with absurd sizes number. Now it will respect the limitation but will insert random songs from the current view.
Database: Add true random songs in playlist if it is gonna exceed its maximum capacity
More context is available here : https://www.reddit.com/r/rockbox/comments/1ez0mq4/i_developped_true_full_library_shuffle_for/
Also :
- Improved layout in the DB browser
- New default max playlists capacity is now 2000 on old PortalPlayer targets to give a better user experience and not having to wait dozens of seconds while creating a playlist
- "Show insert shuffled" option is now true by default
- Add a new shortcut to play all songs shuffled in the DB browser
- Now the feature is fully optional and enabled only on targets that have more than 2MB of RAM
- Add entries about this feature in the manual to explain it to the users
Change-Id: I1aebaf7ebcff2bf907080f1861027d530619097c
Change-Id: I3354923b148eeef1975171990e814a1a505d1df0
Diffstat (limited to 'apps/gui/wps.c')
-rw-r--r-- | apps/gui/wps.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/gui/wps.c b/apps/gui/wps.c index 0de805bd02..82b0394a53 100644 --- a/apps/gui/wps.c +++ b/apps/gui/wps.c | |||
@@ -806,7 +806,7 @@ long gui_wps_show(void) | |||
806 | theme_enabled = false; | 806 | theme_enabled = false; |
807 | gwps_leave_wps(theme_enabled); | 807 | gwps_leave_wps(theme_enabled); |
808 | onplay(state->id3->path, | 808 | onplay(state->id3->path, |
809 | FILE_ATTR_AUDIO, CONTEXT_WPS, hotkey); | 809 | FILE_ATTR_AUDIO, CONTEXT_WPS, hotkey, ONPLAY_NO_CUSTOMACTION); |
810 | if (!audio_status()) | 810 | if (!audio_status()) |
811 | { | 811 | { |
812 | /* re-enable theme since we're returning to SBS */ | 812 | /* re-enable theme since we're returning to SBS */ |
@@ -823,7 +823,7 @@ long gui_wps_show(void) | |||
823 | { | 823 | { |
824 | gwps_leave_wps(true); | 824 | gwps_leave_wps(true); |
825 | int retval = onplay(state->id3->path, | 825 | int retval = onplay(state->id3->path, |
826 | FILE_ATTR_AUDIO, CONTEXT_WPS, hotkey); | 826 | FILE_ATTR_AUDIO, CONTEXT_WPS, hotkey, ONPLAY_NO_CUSTOMACTION); |
827 | /* if music is stopped in the context menu we want to exit the wps */ | 827 | /* if music is stopped in the context menu we want to exit the wps */ |
828 | if (retval == ONPLAY_MAINMENU | 828 | if (retval == ONPLAY_MAINMENU |
829 | || !audio_status()) | 829 | || !audio_status()) |