check file_exist(PITCH_CFG_FILE)
close fd when finished
If you already have a setting saved and you reenter the pitch plugin
with differing pitch settings you will be asked to restore your
default settings
update manual entry to be a clearer
Change-Id: Iaaaf08983a355f9848412d1c6b0bba25d6ea8f39
if you run yesno screens back to back or another screen with
wait_for_release you may never see the release
instead clear anything in the queue but release events
Change-Id: I1b1e42cbb44f2fdfed441ab1f217b6ea4fe07492
In 2c4c1b9, I missed the fact that we still need these,
so that slashes in names aren't interpreted as a path
separator.
Change-Id: I2df0745669c4673497a506a99e754c63dcba045e
Instead of responding with a "Nothing to resume"
message when user tries to resume a playlist that's
finished playing, offer to start from the beginning
again.
Change-Id: Icc4894d4e2d2e29beb1c7646462f9af69e5733aa
Displaying large embedded album art in the
image viewer requires playback to be stopped,
which is pretty disruptive, so respecting the
system setting here may make sense
Change-Id: I479466bf26d85c3305d6c81e2c1818b2c2b2cbdb
With no control file present, the message
"Error accessing playlist control file"
was displayed, due to playlist_resume being
called from gui_usb_screen_run.
You were likely to only run into this after a clean
install, if you hadn't listened to any music yet.
It probably makes sense to move the check for the
existence of the control file into playlist_resume,
and not even have it show a separate access error
message when the file doesn't exist.
Change-Id: Ib3a643c43d3d4d499fa5a13c01955779d69cd357
Unless you had manually resumed the playlist, you
didn't get any warning after Rockbox rebooted, when
replacing a modified current playlist.
Change-Id: Ibc83e3db4e6ee51e94204ac7732760894d2fb602
to check for against /.rockbox/viewers (VIEWERS_DIR) on multivolume you
need to strip all the prefix junk of volume and potentially strip the
redirect directory
Change-Id: I8e24c43d84c3b90ffb4bbf62d4287620a5890ade
ask th user if they want to add a parameter when a viewer is set to an
open plugin entry (wps hotkey, start screen, etc)
Change-Id: I403ac79af15162aeecabb3607923113e27496e4f
skinlist_draw stores a pointer to the list supplied
if this pointer goes out of scope we may try to access it
toggle_theme has a path to handle this but if you move to a a item with the
theme enabled it doesn't release the pointer
later the pointer will be referenced long after it has gone out of scope
limiting this to do_menu() if other areas are problematic the previous
version of this patch applies it system-wide
Change-Id: I57c73d789856cb1a660fb704f02ca55c8978a4d0
rather than going through the whole file each time we can just walk
through the remainder speeds up duplicate removal by quite a bit
check timestamp of tracks to not remove multiple plays of the same song
at different times, unless back to back (then its probably a resume after
shutdown)
devices without RTC use current_tick but thats in centiseconds
convert to milliseconds so we can use the timestamp in the above calculations
my fix to the scrobbler_viewer makes the include menus disappear as
soon as you hide columns so explicitly mark if we are
dealing with a scrobbler log at load
Change-Id: I11bbebe9af45945a7e1326a5e419290086b05aaa
the scrobbler viewer will view any .log file but search and include
column only works with defined headers
it ends up showing a blank result so block this menu for non scrobbler logs
Change-Id: Ifc04dcab52d4416271388bee7d0cb10a144636a4
printcell_set_columns() can take a NULL pointer for the *pcs
it then uses default settings but those were contained within
the scope of the if(NULL) check.
Change-Id: I3147d1f4e3954fdcdb3adb74713f4c8a9a2c08ec
people don't like having to remember to run the TSR plugin so
lets meet them halfway
all tracks are added with timestamp, elapsed, length, trackname
added buffering for ATA devices
still needed:
-Done -- a plugin that parses for duplicates and reads the track info
to create the actual scrobbler log
(log can be truncated once dumped)
this should allow you to run the plugin at leisure
later I'd like to expand this logging to allow
track culling based on skipped songs..
remove the TSR plugin as hard disk no longer need to use it
Change-Id: Ib0b74b4c868fecb3e4941a8f4b9de7bd8728fe3e
- After rebooting, unless the current playlist
had been manually resumed already, the "Save
Current Playlist" option in the root menu's/
playlist catalogue's context menu failed to work.
- Eliminate error message attempting to view current
playlist when no control file present.
Change-Id: I58f1d3dc6f256fcee106ff5a17f69fa46d67b2e4
When playback was stopped (not paused), deleting
the first track of the current playlist started
playback.
Change-Id: I0bd09e1254399d003109215e4e8363a0cd045ac0
the manual states the following:
%V(0,0,-,-,-) %VB
Use %x(filename, 0, 0) to draw a backdrop image (If you want one!)
Then add %V(0,0,-,-,-)
if you forget then it causes display corruption
due to the uninitialized background buffer
instead make a copy of the current screen into the blank backdrop
so we won't be showing garbled data on the screen
Change-Id: I3f0df131d36537e91688e104c9445a604f657362
Missed this in 6a865f2430
If you entered the Playlist Viewer using the
context menu option "View", instead of from
the Playlist Catalogue, a playlist file that was
deleted due to the removal of all of its tracks
would still be displayed in the directory when
returning
Change-Id: I54ca34f70344e289d9e2cb413ee2a38e5bd7a92b
1) Don't re-initialize the Playlist Viewer before
closing it, after making an on-disk playlist the
current playlist. It's obviously wasteful and this
seems to have only historical reasons that don't
apply anymore.
2) Naming adjustments:
- change "onplay" prefix to "context" (e.g.
pv_context_result context_menu, instead of
pv_onplay_result onplay_menu), since onplay requires
being aware of the history for it to make any sense
- rename update_lists to update_gui, to differentiate
it from update_playlist
- change update_viewer_with_changes to update_viewer
3) gui_synclist_del_item(playlist_lists) is not
needed anymore after removing a track, because we
already indiscriminately reset the synclist's
number of items and reselect within the list's
new bounds from update_viewer_with_changes.
As a result, MODIFIED is applicable to both
reshuffling and to removing a track, so
ITEM_REMOVED can be eliminated as its own
enum value.
Plus, SAVED does not require a special case and
can be renamed to PL_UPDATE, so it is usable
when track display is adjusted, in order to
force an update of the playlist buffer.
Change-Id: Ic5202e03223a1ddbb9ff87e388a16ecde39165ef
When you removed all tracks from an on-disk playlist,
you were asked whether you wanted to save it, which
would fail, but did not show any accompanying message.
Instead of trying to save the playlist, after getting
the confirmation, delete the playlist file from disk.
Change-Id: Iad54f2f490b15dd9c8a8fdfb8f12e58fd17d5e36
Reset fd for the on-disk playlist at the place where
ownership is transferred in playlist_set_current (which
already has a note, that the playlist will be effectively
closed, but did not reset the fd).
Also ensure, that calling playlist_load closes the fd for
the on-disk playlist (and its control file), if any were
left open - even though this is not supposed to happen.
Generate name of control file in playlist_init to be more
consistent with the behavior for the current playlist.
Only a single playlist can be loaded in the playlist viewer
at the same time, so generating random names shouldn't be
needed.
Change-Id: I65e0fc07ce608c1d333a90447e18482787a98b8c
Positive values included a leading space, which
meant they weren't displayed center-aligned in
themes anymore.
Change-Id: Ibe75e9b81a2989c87630dd3ea78e4b90c6c74502
Brings it up to libmikmod 3.3.12, relased 2024-12-31
Also fix a segfault that only happened on simulators when using
non-default samplerates.
Change-Id: I2ade2d72a00edab5395328fe76a88a88516aac72
It makes no sense to prevent the current playlist
from resuming when some other playlist becomes empty.
Change-Id: Ibfb7a15b0826ed3baeefbc5060b13d73894b81e6
no functional changes.
remove some checks for screen when SCREEN_REMOTE
is not present
pack the skin_backdrop struct and use the space to remove
the static bool first_go variable
Change-Id: I17a96749d4995dd8124f3be4dd95bba58ee54b6d
This script has grown into a bit of a maintenance nightmare over the years.
I've cleaned up and better documented some of the nastier bits.
Change-Id: I2bb95a89b1edc9a294d9e1112f5be1b877567356
should be no functional changes
looking at the blame for this file shows the buffer was made
static originally due to stack overflow.
Removing static buffer in favor of using the skin buffer
directly shouldn't cause a regression.
Change-Id: I941ed675c5ba8799bea678af61c196eb453a4788