Commit graph

14768 commits

Author SHA1 Message Date
Nick Peskett
be10817e1c Option to constrain get_next_dir() to directories below global_settings.start_directory.
When enabled, if the user has set "Start File Browser Here" (config.cfg:
start directory) to anything other than root and "Auto-Change Directory"
is set to "Yes" or "Random", the directory returned when an auto change
is required will be constrained to the value of "start directory" or below.

Change-Id: Iaab773868c4cab5a54f6ae67bdb22e84642a9e4b
Reviewed-on: http://gerrit.rockbox.org/182
Reviewed-by: Nick Peskett <rockbox@peskett.co.uk>
Tested-by: Nick Peskett <rockbox@peskett.co.uk>
2012-03-19 11:49:55 +01:00
Sean Bartell
b5716df4cb Build librbcodec with DSP and metadata.
All associated files are moved to /lib/rbcodec.

Change-Id: I572ddd2b8a996aae1e98c081d06b1ed356dce222
2012-03-18 12:00:39 +01:00
Szymon Dziok
2004f3eae4 Correct polish translation.
Author: Przemyslaw Holubowski
Flyspray: FS#12531

Change-Id: I7490a162f5034da47d83d8f1812b36b7981f1d77
2012-03-17 20:38:03 +01:00
Alexander Levin
7676dae3e0 More meaningful name and type for 'root menu' setting
The patch changes 'int root_menu' to 'bool root_menu_customized'
which better expresses what the value means.

Change-Id: Ic272ac161fc05f5d3298e1e46578977dd590ebaf
2012-03-16 22:26:13 +01:00
Jonathan Gordon
5edae54e0d skin_engine: Reenable skin debugging in the sim (use --debugwps)
Change-Id: I2881edda45cd3ea69f5284d93bc93c47bb63b3f2
2012-03-15 23:26:07 +11:00
Jonathan Gordon
182a6c80ba Fix compile errors
Change-Id: Ic985bf57da04847bff716ee41db8f107100ff95b
2012-03-15 23:03:33 +11:00
Jonathan Gordon
014a08cabb skin_engine: New tag to draw a rectangle (optionally with a gradient)
%dr(x, y, width, height, [colour1[, colour2]]):
x,y - viewport relative pixel coordinates to start the rectangle.
width, height - obvious. can be '-' to fill the viewport
if both colours are left out the viewports foreground colour will be used
if one colour is specified it will fill the rectangle that colour.
if both colours are specified it will gradient fill the rectangle.

Change-Id: Iad451e99ded663bc7c5d182443659db7d909b388
2012-03-15 22:52:53 +11:00
Jean-Louis Biasini
dcc78cb867 Fuze+/calendar's plugin update keymaps and manual
- fuze+ keymaps for calculator updated
- manual updated accordingly
- also correct a little problem with a line only used by mpio hd300
manual but that appears on all other target's manual.

Change-Id: I9c4d3c21dc6174079edbde8035bad318e09ec74a
Reviewed-on: http://gerrit.rockbox.org/125
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2012-03-15 11:31:19 +01:00
Jean-Louis Biasini
cde74aa90d Fuze+: update minor keymaps mapping for manual consistency/simplicity
HID navigator zoom reset: moved from Play to long Play
    this will avoid having a new /opt{fuzeplus} entry in manual

Change-Id: Ic1dbc7258eb280b35c761b451dcda428245978cb
Reviewed-on: http://gerrit.rockbox.org/117
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2012-03-15 11:29:52 +01:00
Jonathan Gordon
f31e7a1225 Revert "Fix FS#12606 - next track can cause the screen to be cleared"
This reverts commit cb9bc3bbc8.
2012-03-15 11:31:18 +11:00
Jonathan Gordon
cb9bc3bbc8 Fix FS#12606 - next track can cause the screen to be cleared
This is a bit of a hack. We now trigger an event when the skin engine
is doing a full redraw (which means fullscreen clear) before the
lcd_update() to give the current screen a chance to redraw to avoid the
screen flicker.

This commit fixes the issue for screens which are entirely the list
widget (i.e browser and menus), other screens will need aditional fixes
(i.e quickscreen, time&date screen)

Change-Id: I3ffdcd8ccad2c663732f8d5983049c837de00fe5
2012-03-14 22:52:24 +11:00
Osborne Jacobs
595427c095 Add new actions to %Tp (Touchscreen areas)
Add the following actions to %Tp:
createbookmark   create a new bookmark from the wps
listbookmarks    list bookmarks from the wps
trackinfo        show track info from the wps

My main motivation was to allow bookmarking and jumping around audio books
from the wps on touch enabled targets.  You can do it now through the context
menu but it requires 4 screen presses instead of 1.

Change-Id: I1fa1bf0064dfd22b897eca7c56acc1ce8956f14c
Reviewed-on: http://gerrit.rockbox.org/171
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-03-13 03:17:12 +01:00
Osborne Jacobs
fb30d01372 Fix minor bookmark problems/Enhance bookmark functions
This fix:

-fixes when the bookmark menu and submenus are displayed and hidden
 in the context menu.
     -'Create Bookmark' should be hidden when tracks are queued in
      the playlist or nothing is currently playing (previously it was
      never hidden)
     -'List Bookmarks' should be hidden if and only if no bookmark
      file exists for the current playlist (previously it was hidden
      if tracks were queued or nothing was playing neither of which
      hinder loading bookmarks)
     -'Bookmarks' main menu should be hidden if both 'Create
      Bookmarks' and 'List Bookmarks' submenus are hidden

-fixes a problem where the 'Bookmark Error' message was not always
 displayed on bookmarking failure

-adds BOOKMARK_USB_CONNECTED return value to the bookmark functions
 to distinguish if the bookmark list was exited due to a USB
 connection.

-fixes other minor logic problems in the bookmarking functions

Change-Id: If6394b2e77f027773a7c94ffdcb52dbb15e2922b
Reviewed-on: http://gerrit.rockbox.org/177
Reviewed-by: Osborne Jacobs <ozziejacks@gmail.com>
Tested-by: Osborne Jacobs <ozziejacks@gmail.com>
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-03-12 08:54:02 +01:00
Bertrik Sikken
01397c4ff1 rds: show rds clock-time as broken down time instead of UTC time in debug menu
Change-Id: I931182ccd20cf8899f3ce9b6b8d7c7c5f4ea006f
2012-03-12 08:42:53 +01:00
Michael Sevakis
f637072632 Change EQ settings to use a struct array in global_settings.
The previous pseudo array access of separate members wasn't very
nice or clear.

Change-Id: I74a2b39bb9c71a1370a455c01c4d5a860765e040
Reviewed-on: http://gerrit.rockbox.org/179
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested-by: Michael Sevakis <jethead71@rockbox.org>
2012-03-12 00:18:33 +01:00
Michael Sevakis
d18a5cad7f Tweak paramters of mp3_play_data and callback.
Use generic void * and size_t and make mp3_play_data and its callback
agree on types. Use mp3_play_callback_t instead of prototyping
right in the function call (so it's not so messy to look at). Change
doesn't appear to require plugin API version increment.

Change-Id: Idcab2740ee316a2beb6e0a87b8f4934d9d6b3dd8
2012-03-04 14:50:47 -05:00
Jean-Louis Biasini
db856890df test_X plugins PLA integration
1) change all keymaps to PLA
2) add alternative exit keymaps

Change-Id: I5cb8b1fcc515d2b6f9934482e72b80767b2c2fb0
Reviewed-on: http://gerrit.rockbox.org/158
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2012-03-03 19:55:51 +01:00
Frank Gevaerts
105a05cbfb One more *_filesize() to remove
Change-Id: I82884712a660ad91c0e5c329ca0f8488edec21c8
2012-03-03 19:10:51 +01:00
Frank Gevaerts
52724c1bed filesize() isn't prefixed anymore for sims.
Change-Id: Icc08b874785ab2b8e0ebefa5e35dae4ce94e068a
2012-03-03 19:05:52 +01:00
Thomas Martitz
8eb36cfe85 matrix: shorten statement.
Change-Id: I08ac097cab4c2378a4e042b47934ef5870df003d
2012-03-03 16:45:59 +01:00
Jean-Louis Biasini
36c84f9a90 Plugin Matrix PLA integration (code)
This commit changes:
1) replace all keymaps with PLA ones and remove all
now useless precompiler instruction.
2) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
3) add the possibility to change values repeatily by holding key
pressed.
note: no manual for matrix yet

Change-Id: Id3ace2863dd407dd5e5ab9b7b5b460c88bb007ad
Reviewed-on: http://gerrit.rockbox.org/128
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2012-03-03 16:42:13 +01:00
Sean Bartell
26fc31ae93 Add the warble test program.
Warble uses Rockbox's codecs to play files with SDL or convert them to
WAV or raw formats. It also prints metadata and supports some of the DSP
effects. In the future, warble could be used to implement an automated
test suite for codecs, metadata, and DSP.

Change-Id: Ife1a63d2354496016277bfcbae4a9c23423ebd86
Reviewed-on: http://gerrit.rockbox.org/135
Reviewed-by: Nils Wallménius <nils@rockbox.org>
Tested-by: Nils Wallménius <nils@rockbox.org>
2012-03-03 16:41:49 +01:00
Jean-Louis Biasini
693af46f6d Plugin mosaique PLA integration (code + manual)
This commit change:
1) replace all keymaps with PLA ones.
2) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
3) do the required change to the manual in order to match
code's changes.
4) add a missing key in the manual and show them in a table

Change-Id: Ie983c7673c9dec1a9daeb34f5edaaa3c8be7dd5e
Reviewed-on: http://gerrit.rockbox.org/129
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2012-03-03 16:37:47 +01:00
Michael Sevakis
d05db0a90c Correct actionable offense for misappropriation of action context.
Just use a bool to indicate raw button instead of action code. No
bother with plugin version yet again so soon.

Change-Id: I4aa075c0c1fb5308c9d49bebb30ac76f671b2335
2012-03-03 07:52:13 -05:00
Michael Sevakis
f688710707 Change keyclick_click so that it may accept raw buttons or actions.
Adds a new context, CONTEXT_RAWBUTTON, that I hope is out of the way
of everything. Unfortunately have to increment min plugin API version
for the second time today to accomodate additional parameter.

Change-Id: Iaa46b926e57cf377fd4906f2d42bb98e87215033
2012-03-03 07:10:56 -05:00
Jean-Louis Biasini
a92696d40d Plugin Starfield PLA integration (code + manual)
This commit changes:
1) replace all keymaps with PLA ones.
2) do the required changes to the manual in order to match
code's changes.
3) add an alternative exit button (PLA_EXIT or PLA_CANCEL)

Change-Id: I0cea909dd2ff44b8c5a2daba11c192965c4a02c7
Reviewed-on: http://gerrit.rockbox.org/131
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2012-03-03 12:10:53 +01:00
Jean-Louis Biasini
10c566ed94 Plugin logo PLA integration (code + manual)
This commit changes:
1) replace all keymaps with PLA ones.
2) do the required change to the manual in order to match
code's changes.
3) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
4) add the possibility to change values repeatily by holding key
pressed.

Change-Id: Ie68fd4e94830bba8a592941ee4e8b10aeacda923
Reviewed-on: http://gerrit.rockbox.org/127
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2012-03-03 12:05:58 +01:00
Jean-Louis Biasini
f1e1ab8d41 Plugin snow PLA integration (code + manual)
this commit changes:
1) replace all keymaps with PLA ones.
2) do the required change to the manual in order to match
code's changes.
3) add an alternative exit button (PLA_EXIT or PLA_CANCEL)

Change-Id: I8a064b98c118e369f8464de5e43c7641d8a08e9e
Reviewed-on: http://gerrit.rockbox.org/130
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2012-03-03 10:48:22 +01:00
Osborne Jacobs
d5e676ba29 Add a %cs(current screen) state for the "Track Info" screen
Added a new state (current activity) to the %cs tag for the Track Info screen.
This will allow the Track Info screen to be detectable when skinning using sbs
files.

Change-Id: I9319ebce2f8e64b0c974f4a6e3b44f9accee32c5
Reviewed-on: http://gerrit.rockbox.org/170
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-03-03 10:45:51 +01:00
Osborne Jacobs
bcfa783100 Set %cs(Current Screen) to "Bookmark browser" when listing bookmarks from the Context Menu
Currently when you select list bookmarks from the context menu %cs returns
"Context Menu" when in the bookmark browser screen.  This change makes %cs
return "Bookmark browser" when listing bookmarks from the context menu, the
same as when you list recent bookmarks.  This change will make it possible
to determin that you are on a bookmark browser screen when skinning using
an sbs file.

Change-Id: I7fb93525fbafb5d14bba2ae5df7a78df908d09ae
Reviewed-on: http://gerrit.rockbox.org/169
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-03-03 10:41:52 +01:00
Michael Sevakis
286a4c5caa Revise the PCM callback system after adding multichannel audio.
Additional status callback is added to pcm_play/rec_data instead of
using a special function to set it. Status includes DMA error
reporting to the status callback. Playback and recording callback
become more alike except playback uses "const void **addr" (because
the data should not be altered) and recording  uses "void **addr".
"const" is put in place throughout where appropriate.

Most changes are fairly trivial. One that should be checked in
particular because it isn't so much is telechips, if anyone cares to
bother. PP5002 is not so trivial either but that tested as working.

Change-Id: I4928d69b3b3be7fb93e259f81635232df9bd1df2
Reviewed-on: http://gerrit.rockbox.org/166
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested-by: Michael Sevakis <jethead71@rockbox.org>
2012-03-03 07:23:38 +01:00
Dimitar Dimitrov
3f82f3aca1 Sansa Clip Zip: Bubble now shows a proper background image
Change-Id: If595378d58a4602bdc6b101c062c6974f6debf62
Reviewed-on: http://gerrit.rockbox.org/167
Reviewed-by: Dimitar Dimitrov <mitakas@gmail.com>
Tested-by: Dimitar Dimitrov <mitakas@gmail.com>
Tested-by: Bertrik Sikken <bertrik@sikken.nl>
Reviewed-by: Bertrik Sikken <bertrik@sikken.nl>
Reviewed-by: Rafaël Carré <rafael.carre@gmail.com>
2012-03-03 02:54:26 +01:00
Jean-Louis Biasini
46b34da790 Updated some missing items for Simplified-Chinese translation (FS#12584)
Thanks to Gan Lu for the translation

Change-Id: If3577c35e35eaa3940b0d820315e2a7b6c10d7d0
Reviewed-on: http://gerrit.rockbox.org/159
Reviewed-by: Alex Parker <rockbox@aeparker.com>
2012-03-02 21:32:46 +01:00
Jean-Louis Biasini
5bfbc64151 Fuze+: All games plugins keymaps
revert all games plugins keymaps that had mysteriouly disapeared

Change-Id: I648ea4c13ddacc49995254fbb79a0dbb75b2fcbc
Reviewed-on: http://gerrit.rockbox.org/160
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2012-03-02 11:40:02 +01:00
Dimitar Dimitrov
2f5df69284 Bulgarian translation for the remaining strings.
Change-Id: If1c7cde9ba3196f99dcce80b8eaaf46ec6b84b46
Reviewed-on: http://gerrit.rockbox.org/161
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-03-02 00:27:02 +01:00
Frank Gevaerts
4fbbbf1360 Make %LC and %LR always have predictable and usable values.
%LC is now 1 for non-tiled list items (instead of undefined)
%LC and %LR are now -1 in non-list contexts.

Change-Id: Ib7090429fa95528bd141d3d7ca95fd917b25b96e
2012-03-01 18:40:59 +01:00
Frank Gevaerts
b9bf6cdb2c Call skinlist_set_cfg() unconditionally, i.e. also if do_refresh==false
This call is cheap (except if the list config changes, but then it should
be called anyway), and do_refresh isn't always set appropriately, e.g.
when the screen has just changed, which could cause the list config to be
null at bad times, which caused the standard list to be shown instead of
the desired skinned list.

Change-Id: I47dd2552d6d1062456ede4529c4891e80a8159ea
Reviewed-on: http://gerrit.rockbox.org/113
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
2012-02-29 14:11:33 +01:00
Thomas Martitz
e958aeeb76 root menu ordering: Remove underscores from the config setting.
The very vast majority doesn't have an underscore. There are a few
exceptions but there shouldn't be introduced even more.

Change-Id: I18d9bf86b5588f8a22a7a96d2dbea61fde4aba61
2012-02-29 00:05:40 +01:00
Jonathan Gordon
d96a32d01a fix warning
Change-Id: Iccadc7558b9ffb2d87e5bc7697080dd567f4775f
2012-02-29 00:18:56 +11:00
Jonathan Gordon
1c1e1c070c skin_engine: ease the restrictions on %x/%xl
%x and %xl only require the id and filename now.
If you leave off the x,y it will default to 0,0.
If you want to use the default x,y you can still put in the
num_subimages param on the end (e.g %xl(a, file, 3) )

Change-Id: I8eff793dfdd037e302ace8deec9dc16dcea264a7
2012-02-29 00:14:06 +11:00
Jonathan Gordon
34031cba5b skin_engine: Clean up %x() handling - beware theme issues
Internally remove some hacks around how %x() is handled.
%x() inside the default viewport will no longer work if
other viewports are used, so if you are using viewports and
%x() make sure it is in a viewport!

Change-Id: I8ecab805d55fc0f8476ff0516cba38e23400aa20
2012-02-28 23:51:01 +11:00
Jonathan Gordon
0807fe8d36 Fix build errors
Change-Id: Ie46e807799034af2a025c607a76e17c50c5b613e
2012-02-28 23:16:06 +11:00
Jonathan Gordon
2c71aa9feb lcd/skin_engine: Add the ability to draw onto the backdrop layer
The framebuffer the lcd driver uses can now be changed on the fly
which means that regular lcd_* drawing functions can draw onto the
"backdrop" buffer. The skin engine can use this to create layered
effects.

Add the tag %VB to a viewport to draw that viewport onto the
backdrop layer. If you want to draw an image onto the backdrop
framebuffer use %x(backdrop filename) instead of %X() inside
a viewport with %VB.

Change-Id: I741498e2af6d4f2d78932cabe8942317893e7cfc
2012-02-28 23:03:04 +11:00
Jonathan Gordon
b37e6bc8c1 lcd drivers: Convert lcd_[remote_]framebuffer to a pointer
Change all lcd drivers to using a pointer to the static framebuffer
instead of directly accessing the static array. This will let us
later do fun things like dynamic framebuffer sizes (RaaA) or
ability to use different buffers for different layers (dynamic
skin backdrops!)

Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06
2012-02-28 11:44:59 +11:00
Jonathan Gordon
9f48f5f207 root menu: Use - to reset the root menu order from a config
use root_menu_order: - to reset the order

Change-Id: I10c38926d79b10c88e5f1e0acdd85ca1a1489edf
2012-02-27 09:34:37 +11:00
Frank Gevaerts
077e8b61a0 Clean up some variables.
Renames origional_* variables to original_*
Removes original_(width,height) variables that weren't actually used

Change-Id: I604c2ef9ce9d806551e8c52080a5c895415e088c
2012-02-25 22:04:20 +01:00
Michael Giacomelli
6b66b882ec Commit FS#12288 - Sansa Clip+: "Home" in the main menu to WPS/Radio.
Author:  Akio Idehara

Change the keymap for all Sandisk Clip series players so that pressing home in
the main menu will return to the last viewed of either the WPS or the radio
screen.

Change-Id: Id890bf3593a9e6313304c9f7bb3ceb9a36ea6f33
2012-02-25 15:20:54 -05:00
Frank Gevaerts
b5cd5ce8a1 Add %LR and %LC to get at the current row and columm in skinned lists.
This allows list items to be rendered differently depending on their
on-screen position, allowing things like gradients or nonlinear alignment

Change-Id: I1d9c080f97e83707f0e80f57abc762cb2b94f6ed
2012-02-25 16:43:27 +01:00
Amaury Pouly
906e90eb7b Move radio power handling from apps/ to drivers.
Remove direct calls to tuner_power(...) in apps/ and let
the driver manage tuner power with the RADIO_SLEEP setting.

Change-Id: I37cd0472e60db5d666dae1b9fe4755dd65c03edd
Reviewed-on: http://gerrit.rockbox.org/84
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2012-02-25 15:59:08 +01:00
Jonathan Gordon
31a05953e1 FS#12586 - Modify %ss to be able to use numbers for conditionals
i.e %?ss(1,1,%cM)<|one|two|three|...|> or %xd(numbers, %ss(1,1%cM)

Change-Id: I74ecb3f253f3be1fd270f75c0ef79addd364a7de
2012-02-26 00:50:14 +11:00