also fixes a bug where synclist viewport could be empty if the list isn't
initialized
voices path and parameters now
adds the item [Add] as the last item in the list
Change-Id: I1aad62baf3c19a67d04fa1fb3db8a7573e0a467f
open the glyph cache in a separate function so we can
get the MAX_PATH alloc off the stack quickly and
deal with the fd instead
Change-Id: I0e991a1286b29c781e3f03b6a49e100c70809920
Have a report of a hanging scrolling item, ensure the lists are stopped
on exit with gui_synclist_scroll_stop()
Change-Id: If670806f710118c79377bf8c5de6c1a5168e37fc
Always define storage_removable() and storage_present() so
that ifdefs are unnecessary. They were already defined as
constant for the CONFIG_STORAGE_MULTI case, but not in the
case of a single storage type.
Change-Id: I13073b3a72b201b5b11167deb050e6f27139c61c
Go to root menu when Start Screen has been set to "Resume Playback"
but playlist is finished
https://forums.rockbox.org/index.php?topic=55770
Change-Id: I6939fa313dd5fd6485628e22a2d860763492d5cf
Only react to Power button release if previous
button code was Power button press, so that
screen doesn't lock when device may have just
been turned on
Change-Id: I1ba228103efedeeceaaa00c49b1b1da66b63bb75
Clearing the display makes the backdrop come to the foreground.
which can look odd or glitchy, particularly for themes that do
custom drawing on the backdrop buffer (2c71aa9). It also causes
issues if the shutdown has to be canceled.
Instead, enable theme, then clear the UI vp.
Change-Id: Ia96d1e766a9b86ec133522f7cd259e8b88f64216
allows you to import a file and merge native keymaps
pops a yes no prompt to erase existing
duplicates will be overwritten
Change-Id: I167c6fac65775754b2a9874185d14f65638db9d7
Only apply dir filter to 'Browse' shortcuts, so that,
when trying to run a file from Shortcuts that is hidden
due to current dir filter settings, you don't get a 'Failed
reading Unknown' message (LANG_READ_FAILED/LANG_UNKNOWN)
because the tree entry can't be found in ft_enter.
Change-Id: I4eaad2ec415c9bac352a409922848e4407dac993
allows you to import a file and merge text keymaps
pops a yes no prompt to erase existing
duplicates will be overwritten
Change-Id: I0f4425e765f0a2ff6b73b830bcaea1b3f31e83cb
The skin is not unloaded using skin_unload_all in
settings_apply_skins anymore since commit 0ca4b38.
usb_screen was last remaining user until commit a969e1f.
Change-Id: I65a41ed220165587a04e699a7f210c575c00a4eb
I think they mean corrupted not crashes as I couldn't repro that
splash_scroller stepped by individual chars and split multibyte
sequences leaving corrupted chars
now it uses the new font_measurestring() to get the max_w and chops
it at break chars instead
this required a bit of a logic change to the function but should be
as good with less complications
Change-Id: I692db8b4737f41aec08dbc122fb844028498326d
This fixes the repeat_mode being stuck on Repeat Shuffle on the Hiby R1 WPS, and quick settings values being stuck at the last values for touch actions.
Regression from 9e254aca. The repeated state is used by the quick screen to detect repeated actions (see b918ec5) so I also removed "historical baggage" note.
Change-Id: Ic2a97058bbd17d232954ffe37f31a480ee11fe54
Follow-up to 9f20c45.
tagtree.c's retrieve_entries has significant stack usage
(>1.5k) and is called from tagtree_entries_iterate.
Further Reduce stack usage of tagtree_entries_iterate,
going from 784 B to 72 B, by using static memory allocation
for the the tagcache_search struct in the Properties plugin.
Change-Id: I75a170bea1c5392c18a891844a0ff31fbd2114eb
When a font doesn't have a glpyh for a given codepoint, the convertor
points it at the "default glyph". The plan is to replace this pointer
with a canary value so that rockbox genuinely knows this glpyh
does not exist, allowing a fallback path to be implemented.
(The plan is for the fallback path to attempt to compose a glpyh from
its decomposed codepoints, but this would make it be possible to
implement a true fallback/subsitute font mechanism)
Change-Id: If6fea29f5393a6d4b9d5747c911a36fdc8dda5ae
Formerly fixed at the first glpyh in the converted font; now it can be
explicitly set. This mirrors the functionality available from using the
DEFAULT_CHAR property of BDF fonts
Change-Id: Ibd754faff3fd4d393c4781e8faa685612e3301f0
Moving the skin update from gui_synclist_set_title to
gui_synclist_draw (c41beeb) had the inadvertent side
effect that, if gui_synclist_select_item was called in
between, it may have missed a configured skinlist that
only got enabled by the skin update. Which could lead
to a selection appearing off screen.
This was mainly an issue if you had popped an activity,
which resets the skinlist cfg to NULL, but didn't perform
a skin update before the call to gui_synclist_select_item.
Now that GUI_EVENT_ACTIONREDRAW can be used instead of
GUI_EVENT_ACTIONUPDATE to prevent the display from being
updated, we may as well update the skin immediately in
gui_synclist_set_title again.
Change-Id: Iaee98d670ffb8d7b6590bd2ba11827fef5fba5a8
Stack overflow in splash_progress called from
tagtree_subentries_do_action with stack protector
enabled on mips
Change-Id: Ia71e0493e279af0531ae792d41442198555664f6
This disables custom scroll bars when initializing lists
that are currently always un-skinned, in scenarios where
there is neither a new activity to be pushed, nor is the
theme toggled.
Change-Id: I1bb05fc9be956c71e1adb70e764094082d9bb904
currently logf() in codec are printed unconditionally when
ROCKBOX_HAS_LOGF, which is confusing.
Gate them behind LOGF_ENABLE to align with the main binary.
Change-Id: I4eb44604000acded55d0af8869145c4f3d77efcb
add a plugin_ram_end symbol to plugin.lds and rewrite ovl_offset.pl
to read plugin_ram_end and plugin_load_end_addr from the elf via nm.
this removes all dependence on the linker map file format, which
differs between gnu ld and lld.
Change-Id: I66e623d9a2b44eb84ae7035155c84d8afe46df23
The skinlist cfg may not have been restored in time
after leaving the onplay tree menu, because the skin
isn't updated before gui_synclist_select_item is called.
This can result in the wrong number of visible lines
being calculated for the list, and a selection that
appears off-screen.
Regression introduced in commit dfd9c10, or later.
Due to the recent drawing changes, reverting the
changes to onplay.c doesn't re-introduce any visual
glitches.
Change-Id: I853bdfe6b6ba39e2eb281534ca302a0a828253b9
Takes care of disabling scroll bars when the current activity
doesn't change, but the theme is toggled. Applies to confirmation
prompts, for example.
Since we're updating the skin immediately afterwards, the cfg
will be reset as needed.
Change-Id: I8a62b6b4ad0abf5176ab6b3e39281021108cb59f
clang uses "unsigned int" for "uint32_t", which does not match gcc's
"unsigned long".
fix errors caused by this.
Change-Id: I05aaf23934167a56a6e400f49fcaf8b70bfaca13
this fixes "has non-ABS relocation R_MIPS_26 against symbol 'spl_main'"
error when linked with lld.
Change-Id: I6b584d8fdcae3f509f322b8557249bc2870904a3