The WPS calls onplay() with a pointer to the path of the current track . We need to make a copy of the path so it isn't affected by track changes.
Change-Id: I10a2a93da644932033e01ffbfd85cad20abb555d
Even though filetype colors can't currently be changed by going to Settings->Theme Settings->Colors, a user likely wishes to still reset them when selecting 'Reset Colors' after a .colours file may have been applied by a theme.
Change-Id: I4494c83a502666900f6d9d2cc3fb1825af5e45f6
1) The Insert functionality was changed in abebc6b to not delete
unfinished dynamic playlists anymore. "Play Next" has now been
added as an option when playback is stopped. The behavior of
"Play Next" as such has not changed and it is now the consistent
way to replace a current playlist in all playback modes.
2) The 'Insert' and 'Insert Shuffle' options will now only be
displayed if there is a resumable dynamic playlist
Change-Id: Ib5c5469b9e2c583ab06e0f47a922c24e5adf6b5f
Change Browser shortcut to the plugin icon
drop back into WPS on opx return
allow same action to exit shortcut menu as entered -- might be problematic
Change-Id: Id7013a514c8e8862ee1da44b033d10b7519e9127
(The usb_mode selection setting was actually broken even though
it had been previously compiling...)
Change-Id: I0cac31d24c0ef684b934e40ab14f683cc4a31738
Fix returns from shortcuts -- should now run plugins
Fix formatting of file names to remove path from browser shortcuts
Change-Id: I46e337110d04b84bedcb0c2945d5dd29a1860847
If we update english.lang, we need to re-run genlang on the other
language files so any changes are picked up.
Change-Id: I7d296b3cc814871e881bdeac2784e64705bde10b
Added an entry 'Add' to the main screen to lessen confusion
side note:
its actually a shortcut back to this plugin with flag '-add'
passed as a parameter
Change-Id: Ifeb0a1e5be99764b1d25d5a3b0e00f1449ec3d78
load_voicefile_data wasn't checked for success leading
to a use after free situation
get_clip now checks for valid index_handle before using it
Change-Id: Id66dba6dbd6becfc9e0fe922fbc1d0adec1f0393
Discovered on ClipZip but applicable to other LOW MEM targets
Back off voice buffer on playlist_resume
Change-Id: Ia316c4b7fc1bcb089d3069a13dd7c193edf2ba1e
Open plugin needs the context menu to allow the user to add an item
on the first run there are no items and therefore nothing to pop the
context menu from
Change-Id: I7a78454ff29b20c7b60db44349dd23d500ed887c
0ce42df prevented read_color_theme_file() from being
executed when applying settings (from a cfg file)
if the filetype colors setting was set to "-". Resetting
custom filetype colors happens in that function though and
thus wouldn't work. You had to restart Rockbox for the
setting to be applied (at which point read_color_theme_file()
is called from filetype_init() which is called by the init()
function in main.c)
The safety check has been moved from settings.c directly into
read_color_theme_file(). This has the added
advantage that it will also apply during the init process
where there existed no check before (prevents the problem
mentioned in 2e3a8c7).
Change-Id: I547fe180f0bac79889bf2c44778bb1cc4f9d4307
If the custom UI viewport (for displaying lists) changes size when entering dirbrowse, other viewports won't be correctly rendered and require a redraw.
The following is a minimal test case for an example SBS where (the specified background color for) the viewport at the top of the screen won't appear after the user has entered the (root menu of the) file or database browser:
%?if(%cs,=,1)<%VI(main)|%VI(other)>
%V(0,0,-,21,-)
%Vb(ededed)
%Vi(main,0,22,-,-,-)
%Vi(other,0,60,-,-,-)
Change-Id: I1aeed0561f16531802d0fb8dc5fd18d65ac8f25a
Reshuffling a playlist using the WPS context menu for the current playlist is a destructive operation since the previous order of items can't be restored. A warning should be displayed, so that the user can still cancel the operation in case they intended to select another menu item (e.g. one of the harmless "Playing Time" or "Save Current Playlist" items right next to it).
Change-Id: Ib9fc379439d155be907872d77cf54d5035bd08a0
After using “Insert Next” to insert multiple songs at once (e.g. an album from the database browser or folder from the file browser), subsequent Insert operations will incorrectly insert items after the first song of all items that were previously inserted, instead of after the last song of the previously inserted items.
A bug fix was originally written by Costas Calamvokis for the file browser only. I adopted the original fix and added code analogous to it so that it works from the database browser as well.
See FS#7898, FS#7363 or this forum post for more info:
https://forums.rockbox.org/index.php/topic,53741.0.html
Change-Id: Ie2718e136df0b340000f7a171e9e806cf23a27b4
Rockbox would unexpectedly and without warning erase the current dynamic playlist (when it hadn’t finished playing) if the user inserted or queued up items while playback was stopped.
This fix ensures that the playlist is only deleted if it has either finished playing or can't be resumed.
Change-Id: I73b7bd56e6399f9be4bb000bae39c8b6a5e1b79b
Music currently doesn't begin playing after the user has selected a new song in a playlist, unless another item was already playing or the previous player state was "stopped" (but not "paused"). This results in an inconsistent user experience. The user's likely intention is to immediately listen to the song they select for playback regardless of the previous player state.
Change-Id: I68a8da01b06a81d8c3b61e351710431152bfdfaa
If the tag being checked returns a negative number (e.g. %LI does that
when the current list item does not have an icon) the tag's value would
always end up being 1.
Change-Id: I69ab175b6c46dd7567386e649732dbb8327972fc
Internally, buffering tries to load the entire album art file into the
audio buffer, which will fail if the file is larger than the buffer.
Playback.c interprets a file failing to buffer to mean that the buffer
is full, so it waits for more space and tries again. This results in a
deadlock since the file will never fit.
Change bufopen to return a new error condition when an image file will
not fit on the buffer because it is too large: ERR_BITMAP_TOO_LARGE.
Note that we arbitrarily set "too large" to be within 64KB of the
entire buffer size or larger, this could be adjusted if needed.
Change audio_load_albumart to pass through error messages from bufopen.
In playback.c, check to see why audio_load_albumart fails. If it fails
because the file is too large to buffer, simply ignore the file. If it
fails because the file would fit but the buffer is full, try again
later.
Change-Id: I66799ae26f124b495e1522fce7285332f4cf986f
While using Rockbox for a while on my 1st-gen iPod mini I noticed that
the first entry of a list sometimes displays a wrong character at the
18th column. For example, the ':' character would display as 'z', the
'-' character as 'm', 0x00 would display '@' and so on. Oddly enough
this only occurred when the scrollbar was enabled.
I figured that the call to `display->set_viewport(list_text_vp);` in the
for loop inside `list_draw(...)` causes this. Digging deeper I noticed
that in the `lcd-bitmap-common.c` driver the `current_viewport` was
pointing to the start of the line's text. From what I can tell the
cause of this was that the viewport was set to a struct with a shorter
scope than the entire function.
The actual fix for this is quite straightforward -- once the scrollbar
has been drawn the viewport is now changed back to the default one.
Change-Id: Id6a7bd8f74864641ea1670fedea9d12d764e78c0