we shouldn't need to save the last_screen unless the plugin were to
bypass the normal shutdown procedure
if its a crash do we really want to resume the plugin?
its it is intentional save the settings prior.
Change-Id: I994ed256e7b9e88add0c846825a39b298e2644dd
since the plugin browser now exits before running plugins
it has already loaded the dest data for the plugin
the plugin will be run from the root menu with the open_plugin run key
BUT, since the calls originated from the shortcuts menu
it overwrites the run key with its own
this patch allows the shortcuts menu to overwrite the dest
key as well so it can run the loaded plugin
Change-Id: I63912071d720df01c6fda25d92d9541818e52a43
recent changes broke shortcuts when they originated from the root menu
I mistakenly thought GO_TO_ROOT only happened at start and otherwise was
GO_TO_PREVIOUS
this commit also adds a few missing features for Start In Previous
to resume the last plugin running at shutdown
Additionally GO_TO_ROOT now overwrites the global last_screen so you can
return to the main menu on next startup
Change-Id: I86bf842616e25dc3d4f684ff9d476e6a5ba96b04
The onplay-context was previously not reset when using the playlist
viewer, which led to a bug if onplay() was last called in the context
of the database. If you then tried to insert songs into a dynamic
playlist using the playlist viewer, a selected track from the database
would be picked, instead of one from the displayed playlist, due to
special behavior of add_to_playlist() within the database context.
Change-Id: I727d96fc1bfb2454ed3535959c1b0044ff7d6359
now that the plugin browser is resumable
exit it before running plugins
this causes a problem with the open plugin
shortcuts that call other plugins
but its now handled in count limited loop
so plugins can run plugins in a chain
and overall with less overhead too..
the problem remaining --
the plugin exits on USB, returns to ROOT
the browser resumes the
directory next time you select plugins
making for an unwanted auto return
Change-Id: If401f698207cbae824e95d69a378f13456a5dee4
So that a “scroll left” button can be repurposed
for returning to the main menu when there is no
existing menu button mapping.
Change-Id: I38515943313f69cc3241b3f523c94ea012471b88
make the plugin browser remember the last item between invocations
this has bugged me for the longest time dealing with the plugin_menu
Fix a very old bug fix for reloading lang strings in the lang menu
FS#8117, sending multiple ENTER_MENU_ITEM callbacks from different
areas of the code makes it hard to keep track of where your callback
is originating
Change-Id: Ib0a61558c11ee4c772134378a7020ac0e10fc4ee
I noticed the way filetree switch was modified
for the lua (and then) opx and open plugin viewers
since builtin files are assumed to be handled in the filetree switch
what if instead filetype_get_plugin() could search the available viewers
this could probably be extended further with selectable defaults
Change-Id: I40f74cd698f4b788a0adcbebf32c08a970df29a5
it makes more sense to make the main buffer static and make the
second (infrequently needed) buffer as stack allocated
Change-Id: Ide7c1a7a312124e47a23ed0ab75a90d7b8be982e
Adding a checksum over the struct offset will allow checking
for compatibility across machines rather than using packed structs
to ensure compability
For any file created by the user from the device this isn't really a concern
But for files between machines, across installs (sim v device),
possibly even across compilers this at least will alert the user
rather than returning junk data
Change-Id: Id0531bbaa7013dce24dece270849f0a10ac99c20
On language change Stored plugins may fail to run due
to hashing on lang dependent string
allows searching by langid when the supplied key is LANG_PTR
Fixes error on hash flush where previous entry was not restored
Adds routine to update file in-place (for ATA targets)
Other targets make a temp file to copy entries
breaking changes:
ROCKBOXDIR is no longer hashed since
/.rockbox directory may soon be able to be changed
packed attribute added to op data structure -- oops
Change-Id: Ieead26609559b9c5bdadc6a95227cb2bfbb9f71c
CheckWPS doesn't catch errors involving translated strings
Instead of breaking old themes when the langids no long exist
return "<ERR>"
Change-Id: I0d744cd48bb5a27e735fce3f6f740450d1f6a55a
0.) B 0 /rockbox/apps/main.c:405
1.) B 1 /rockbox/firmware/kernel/thread.c thread[dircache]:1508
2.) B 2 /rockbox/apps/tagcache.c:4772
3.) U 3 /rockbox/apps/tagcache.c:4793
add logic to show count after log rolls over
clean-up
Change-Id: Ibda0a56e5d8d89aa8b7649f4f9fa64eb1ff0e08f
when the voice system is doing queued voice clips you can get a
voice_stop event which cancels the cpu boost
but the quiet count was not reset to 0
next clip may play unboosted causing stuttering
just boost unconditionally on Q_PLAY
it'll unboost after timeout if unneeded
Change-Id: Ib39df5d9f8a9e41299147a885048cf1361180dd6
This reverts commit 67716c6b46.
Reason for revert: Only partially working on bare-metal ports, so revert this for now.
Change-Id: I5cea7d2b6466a43aaff4c3eb90ab5d7aee736a5b
This adds LANG_VOICED_DATE_FORMAT, a format string with these tokens:
Y 4-digit year
A Month name
m numeric month
d numeric day of month
The default (english) is '23 January 2013'
In comparison, english-us is 'January 23 2013'
Change-Id: I055a3287c104260dec63bba58d36fdae9df1ed16
For example, English would say "231" as "two hundred thirty one" but
many other languages would say "two hundred one and thirty"
So, if VOICE_NUMERIC_TENS_SWAP_SEPARATOR is not an empty string, swap
the tens and ones position and use that string ("and" in the above
example) as the voiced separator.
Change-Id: I69f8064d44b3995827327cabae6ad352bf257d04
This reverts commit 4695f80230.
Reason for revert: Something else is unboosting the thread this is a red herring
Change-Id: I0e71e0065b13129bbf59d45416c15799c446dcad
reset quiet counter after Q_VOICE_STOP
when the voice system is doing un-queued voice clips you can get a
voice_stop event which cancels the cpu boost but the quiet count was not reset
next clip will play unboosted causing stuttering
Change-Id: Icaada443e2399bf146e30bebee599db5b379063a
A reasonable default assumption for a user
would be that they can plug their device into
a USB AC adapter and it will charge with as much
current as it reasonably can. With the previous
default, an AC adapter will only do 100mA, basically
a trickle charge.
Make this configurable default per-device, so as not
to break old devices without testing.
Define TARGET_USB_CHARGING_DEFAULT to USB_CHARGING_FORCE
to use the new default.
Tested on both erosQ Native and M3K.
Change-Id: I77265d356a41d67357ebc6e9f7e0c25a37b74931
-Link 'Artist' entry to canonicalartist field.
-Convert all possible users of artist field to canonicalartist.
-Tweak 'Same as current -> Artist' menu to also include albumartist field matches.
Change-Id: I52e87cc0bd6ca50f1645447819ca55669df37354