From c16dbbfd1fb7bf4bc268a4693bbed21497456b30 Mon Sep 17 00:00:00 2001 From: Paul Sauro Date: Wed, 28 Aug 2024 22:55:52 +0200 Subject: 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 --- apps/onplay.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'apps/onplay.h') diff --git a/apps/onplay.h b/apps/onplay.h index 74dc045db3..03861e9cf6 100644 --- a/apps/onplay.h +++ b/apps/onplay.h @@ -25,7 +25,12 @@ #include "menu.h" #endif -int onplay(char* file, int attr, int from_context, bool hotkey); +enum { + ONPLAY_NO_CUSTOMACTION, + ONPLAY_CUSTOMACTION_SHUFFLE_SONGS, +}; + +int onplay(char* file, int attr, int from_context, bool hotkey, int customaction); int get_onplay_context(void); enum { -- cgit v1.2.3