fixes:
- traverse_dir was called recursively using two
MAX_PATH local buffers => possible stack overflow
- The import function inserted additional, incorrect,
entries when the whole line buffer was filled
- "Dirs not found" message overlapped number
of folders when generating folder list
- Final number of scanned folders wasn't displayed
- Wouldn't stop inserting when maximum number
of files in playlist was already reached
- Prevent buffer overflow when importing
- Don't write to fd after opening failed
- Use whole buffer with read_line, instead
of subtracting 1. Remove hard coded sizes
- CRs don't need to be removed in import function
(already handled by read_line)
features:
- Use insert context for *much* faster insertion
of large # of folders, and nicer progress display
- Use UI viewport
- Add progress indicator when saving or loading
- Display number of folders in edit list title
- Go back to plugin's main menu from edit list
- Only ask to save changes if list is dirty
- Warn before erasing modified playlist
- Flag successfully created playlist as modified
- Make folder scan wait for dircache
- Shorten menu item names
- Put "Play Shuffled" menu item first
- Remember selection when returning from submenus
- Go to WPS after ACTION_TREE_WPS
- Exit menu when pressing Back
- Perform an initial scan, if no data file exists
yet, when "Play Shuffled" or "Edit" is selected
Change-Id: I7df76f8fb8387888ce491d8b74b01b481e9997d3
This new tag returns the position in the playlist as a percent. The main usecase for this is to use it as a bar tag, allowing themes to visually present playlist progress.
Change-Id: I0eb001e7458d97b8a0db39f3980d9c283bc8806b
This is necessary if you want to detect touches on the bar region
using %Tl conditionals. Suppressing the auto-created region and then
creating one manually using %T doesn't give exactly the same results
because user-defined touch regions can't yet specify padding.
Change-Id: I2f4bde8eb56ba89645c72f3cc9d4b2355b934abd
It's been possible to label touch areas since the v3.9 stable
release, but it was never documented in the manual, only the wiki.
Change-Id: I6b92ff1d19369c105dc3a90aa04f8763f18a4214
Cut off only happens in pdf output (fixed column width), not html.
Add \tabnlindent in favor of spaces in some places for consistent
display of multi-line-tag-parameters.
Change-Id: Ie2d4196da9fcd02af5e3ff72dcc9a97ae2d25303
High-frequency files increasingly use a block size of over 4608B, which
means we need larger buffers to decode them. However, larger buffers no
longer fit in IRAM on less-capable devices, hurting performance for
"normal" file playback.
On our slowest devices (M68K and PP-based devices), this is not worth
the tradeoff as they will likely not have enough CPU oomph to decode and
downmix these files in realtime.
S5L87xx-based devices have the raw performance to do this, so we decided
to err on the side of wider file compatibility at the cost of some
performance.
All other devices are unaffected.
Change-Id: I7344cf4c8c6b7b5c14f1ea67381160665d6ece5b
Backdrops persist regardless of their location
in the file system since commit d09f978 (FS#12041):
"allows loading of backdrops from anywhere, and
keeps those backdrops after reboot."
Change-Id: I7b8cd2cdbca15b6d9ee7baae20a5d074c9765257
According to screen driver this device screen is actually 16 bit RGB565 (https://github.com/DrUm78/linux/blob/FunKey_S/drivers/staging/fbtft/fb_st7789v.c#L137).
This also fixes the color banding issues we had before and boomshine doesn't segfault anymore. Also building rockpaint now that's possible.
Change-Id: Icee49c347fbfabc79e0040314ec148cb77ca6325
Cleaned up manual changes, and for some reason i forgot to add ACTION_WPS_ABRESET
mappings before so here it is, needed for the manual wps section.
Change-Id: If7ab8b146e84f91bb51a3ed03fb872ef3bab4d1f
This reverts commit 614c6e9500.
Reason for revert: Just because you find it confusing doesn't mean it doesn't have a purpose..
make YOUR own theme if you don't like it seems like just as useful as the previous commit
Change-Id: I1555f483baaae77e396e88af6973c90414ee11dc
Rework installation instructions, add blind users button
description, and generally clean up and make more readable.
Change-Id: I81fd4a7abf2ccc886cdc029afb73b1d0a71a35d1
- Default to round border in analog mode
- Default to segmented LCD style in digital and binary mode
- Default to date format most fitting for current language
(instead of D-M-Y)
- Don't forcibly set a light background before menu is
displayed or when quitting
- Update manual
Change-Id: Ifb6a41bb99701ae8f8cbf5fa0db2a3a332085f43
Allow independent sorting of playlists in the
playlist catalog, using the context menu.
You may want to usually sort playlists by their date
(modified), but sort audio tracks alphabetically.
This is now possible without having to constantly
adjust a setting.
The fact that 'Sort Files' applied to both the file
browser and playlist catalog seems more like a side
effect of the implementation, rather than behavior
that is wanted. Additionally, the 'By Type' sorting
makes no sense when only a single type is displayed.
Since many of the other File View settings don't
apply to the playlist catalog, hide the menu there.
Change-Id: Ic35038015d0860998ae117f472ce23ce3bc80cfa
Lets you launch the main_menu_config plugin
from Settings, so that it remains accessible,
even after all other menu items have been
hidden.
Includes minor changes to the main menu config
plugin, so that it better fits in with the rest
of the settings menus:
* Keep theme enabled
* Autosave
* Add "On" or "Off" suffix to each item, to prevent
confusion when Icon_Config is blank, as is the case
with certain iconsets
* Update current selection after swapping items
* Prefix spoken selection with row number for enhanced
clarity when swapping items
* Change title to LANG_MAIN_MENU
* ACTION_STD_OK to toggle an item's visibility
* ACTION_STD_CONTEXT to access options for reordering
menu items, or for reverting to the default menu
* Ask for confirmation before reverting
Change-Id: I74240b94243224c76e23ef8f3a0559bd8ba28df0
Replaces the "Rockbox!" string in playername.txt with the player's model name, in case the file does not exist at boot.
Change-Id: I458b6b89d0d998d8cf889d01122b01cee42b21c5
Currently, in Cabbie v2 there is a demonstration of the %ft() tag, which shows the player name (or Rockbox! if not configured) for a second between switching tracks, or every 5 minutes of playback. This is confusing for a couple of users (including me), does not bring any useful information, and is removed from the theme. The tag and its documentation are left intact, so theme developers can make use of it in their themes.
Change-Id: Id3c79f442e4836a78d24997bd66e01c08206dd18
The new announce_status plugin manual had some errors:
* unescaped '_'
* spurious trailing '}'
Also made the time/date stuff gated behind the 'rtc' option, as
they won't function otherwise.
Change-Id: Iddd49472d4961ed167678ec835e777320570024a
prev/next -> PLA_LEFT/RIGHT
volup/dn -> PLA_UP/DN
scrollwheel -> PLA_SCROLL_*
This will fix bubbles and any other plugin that is explicitly expecting
PLA_SCROLL_* events.
Change-Id: I9fd4c2e6bdd13e147b20e0f0f600e7e0b9a82842
Trying to save a current playlist associated with a
file that doesn't exist anymore, is likely to result
in a panic.
+return to keyboard picker after
complaining about missing dir.
Change-Id: I00ea0b08521d4a4503243d636af01252119939bc
- Reverse order of prev/next buttons in html manual
- Rename "Playlist Catalogue" to "Playlists"
- Update order of menu items in "Playlists" context menu section
- Add "View Album Art" to "WPS Context Menu" section
- Adjust wording in "Playlists", "Basic Controls/Concepts" and
"Database" section
- Fix: Playlists are saved to root directory (not cwd) if no path
provided
- Fix: "Recursively Insert Directories" applies to all playlists,
not just the current one
- Fix: Update description of "Create Playlist" option
- Generally refer to "current playlist" instead of
"dynamic playlist" and remove reference to "on-the-fly playlist"
Change-Id: I200d19c5fb10f1f0ddb7d993827c90be4a7402b9
mikmod uses WPS_VOLUP and WPS_VOLDOWN to scroll down and up
respectively, which works for the ipod clickwheel, but results in
inverted scrolling for everyone else. Correct this for all non-ipods
and correct the manul (which actually didn't report this either)
Change-Id: I5a84512dfbf068ca5c4206f4362185d4d7e5c9fc