Now, call it earlier and remove parts of it that caused the need to call it later. Removing that is OK since it's done again on settings loading.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23603 a1c6a512-1295-4272-9138-f99709370657
This is similar to %Sp for pitch. The conditional form %?Ss<...> is also
supported in the same way as FS#10680; you can use
%?Ss<%xdAa|%xdAb|>
to show an icon of a tortoise (subpicture 1 of image A) or a hare
(subpicture 2 of image A) when not playing at the normal speed.
Flyspray: FS#10681
Author: Junio C Hamano
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23591 a1c6a512-1295-4272-9138-f99709370657
When there are two choices (i.e. boolean), choose the first one if the
pitch is different from the normal value, and choose the second one if the
pitch is the same as the normal value.
When there are more than two choices (i.e. enum), the left half of the
choices are used to show 0..normal range, and the right half of the
choices are used to show values over that range. The last entry is used
when it is set to the normal setting, following the rockbox convention to
use the last entry for special values.
2 items: %?Sp<0..99 or 101..infinity|100>
3 items: %?Sp<0..99|101..infinity|100>
4 items: %?Sp<0..49|50..99|101..infinity|100>
5 items: %?Sp<0..49|50..99|101..149|150..infinity|100>
6 items: %?Sp<0..33|34..66|67..99|101..133|134..infinity|100>
7 items: %?Sp<0..33|34..66|67..99|101..133|134..167|167..infinity|100>
This will allow two expected use cases:
(1) %?Sp<%Sp> to show the pitch only when playing at a modified pitch.
(2) %?Sp<%xdAa|%xdAb|> to show an icon of Darth Vader (subpicture 1
of image A) when playing at a lower pitch than the original, and to
show an icon of a chipmunk (subpicture 2 of image A) when playing at
a higher pitch than the original. When playing at a normal pitch,
nothing is shown.
Flyspray: FS#10680
Author: Junio C Hamano
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23589 a1c6a512-1295-4272-9138-f99709370657
Also, slightly reorder the enum to group misc items together
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23573 a1c6a512-1295-4272-9138-f99709370657
* viewport_set_defaults() will always set the viewport to the intersection of the user setting and any sbs set user viewport
* viewport_set_fullscreen() will always set the viewport to the full display, take care to disable the statusbars if you use this!
This patch is from FS#10709 and contains code which will be removed once the current inbuilt statusbar is finally removed. This *may* break themes which dont use the %we or %wd token.. follow up commit to fix this coming...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23507 a1c6a512-1295-4272-9138-f99709370657
new skin tokens:
%Rp - does the target have recording?
%Rf - samplerate
%Re - encoder
%Rb - bitrate
%Rm - mono/stereo
Please put all bugs from these (which very probably dont work 100%) into FS#10755. And someone who knows how the recoding capabilities work please look this over... ideally the same value should be returned for the middle three tags no matter what the capabilities of the target are.
CustomWPS on the wiki for more details
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23491 a1c6a512-1295-4272-9138-f99709370657
If the feature is known to be unavailable at compile time or runtime detected, then let parsing skip over the true case. That enables parsing skins that properly put tags not available on a target within these tags. In the past the true case was parsed even if never could be true, which led to unexpected parsing failures.
Parsing %cc<%St|time format|[..]|> is now possible on target where that setting doesn't exist (the %St parser wold fail).
More of these tags are to be added, for example to indicate fm radio or recording capabilities.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23479 a1c6a512-1295-4272-9138-f99709370657
This fix is as good as we can do, but not perfect. Because the sbs is only updated when a button is pressed it will stay in the "volume changing" state probalby longer than expected.. which isnt terrible, but useful to remember.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23455 a1c6a512-1295-4272-9138-f99709370657
* add the TOKEN_RTC_PRESENT value to the skin debugger listing
* Allow the width and height of a viewport to be negative values (so width -50 means extend to 50pixels inside from the right edge)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23393 a1c6a512-1295-4272-9138-f99709370657
%V|-50|0|-|..... will position that viewport 50 pixels from the right of the display at the top.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23378 a1c6a512-1295-4272-9138-f99709370657
* Add function list_get_nb_lines and replace duplicated codes to calculate number of lines by it.
* Refine calculation of start_item in function gui_list_put_selection_on_screen.
- displays as many items as possible. hopefully fix FS#10054.
* Fix checking bounds in function gui_synclist_item_is_onscreen.
* Remove trailing spaces and fix indents.
Flyspray: FS#10722
Author: myself
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23367 a1c6a512-1295-4272-9138-f99709370657
Instead, introduce a new skin struct holding data which is meant for all screens for a single skin (struct wps_state is currently used by both at the same time). Also clean up (classic) statusbar handling for skins using this new struct.
Also, implement deactivating updating of the custom statusbar when the LCD is deactivated, saving a bit battery life on some targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23304 a1c6a512-1295-4272-9138-f99709370657
Increase maximum event count as we need more (I actually had a report about it during custom statusbar testing).
Removed corresponding functions from the core and plugin api. Bump min version and sort.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23302 a1c6a512-1295-4272-9138-f99709370657