* Remove explicit tracking of elapsed time of previous track.
* Remove function to obtain auto skip flag.
* Most playback events now carry the extra information instead and
pass 'struct track_event *' for data.
* Tweak scrobbler to use PLAYBACK_EVENT_TRACK_FINISH, which makes
it cleaner and removes the struct mp3entry.
Change-Id: I500d2abb4056a32646496efc3617406e36811ec5
This logic checks whether the skin's albumart dimensions differ from the
previous skin to force rebuffering if necessary. This was broken since
a while as the necessary information was reset.
Change-Id: I3b9f3a819c6af202af8ad66c13742f704ce45ab1
Reviewed-on: http://gerrit.rockbox.org/476
Tested-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
d6c6c07 changed the AA load tag to make sure the image width/heights
fit in the viewport, Revert this because it doesn't actually make
sense to check it here.
Change-Id: I3fe4b074ef8fe88560f2f894ec651027ea3642f4
Fix the need to resize progress bar when using a slider.
Slider stays in bounds. Progress bar is not resized.
Works well with square sliders that should not overlap
edge of progress bar. also works with rounded sliders.
You can also make progress bar the full width of screen
while using a slider. Before if you would make the
progress bar the full width of the screen and add a slider
the progress bar would look like it was padded on both ends.
This fixes FS#12823
Change-Id: I60345efc5cd0f46286f2591ed032f0d9320d1c3e
Reviewed-on: http://gerrit.rockbox.org/402
Reviewed-by: Hayden Pearce <saint.lascivious@gmail.com>
Tested-by: Hayden Pearce <saint.lascivious@gmail.com>
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
It fixed a simulator warning in the skin debug screen but broke
the icons in the database folder chooser. Proper fix shortly.
Change-Id: If366daacc440f937c40960112477b8f6136b72b9
There were some bugs, especially when the user scrolled above the
list viewport. One bug made Rockbox completely unusable once triggered.
Change-Id: I9bb4722ff4381db189058e9a19ea30b2c69e87d9
AA was broken when an RTL language is used, causing it to not
be displayed.
Also fix th out of bounds handling when width/height > viewport
Change-Id: I4899cd32ec58107c987e3cc0e8df582963bdcf62
With radioart enabled there appears to be buffer corruption when
the image is loaded causing the player to data abort in skin_render_line()
So, disable the code untill someone can fix it.
Change-Id: I6acf3f76ce38aa2784b1b24ed6da29a9c5bee479
Use %x9(id) to draw an image in the whole current viewport using the
9 segment drawer (which draws the corners as normal and *tiles*
the middle segments to the needed width/height).
Future work is to make it scale instead of tile
Change-Id: Ic3ed1cad93f96091694801eb442e0da5a2401203
Keeping the touchscreen pressed during a screen transition can lead
to accidental actions. action_wait_for_release() currently doesn't work
properly for touchscreen, so it's better to not transition before release.
Change-Id: I37bd67945b05fff1b4a5452313f6415a247e3af9
with no button pressed.
If e.g. two yesno screens directly follow each other the button release of the
first one was incorrectly accepted in the second one. The fix exposed another
problem in action.c if action_wait_for_release() is called when no button is
actually pressed. The next press was silently eaten.
This time re-introducing FS#12723 is avoided by leaving the offending hunk
out in yesno.c.
Change-Id: Icfe57375067f51f5c8177f3585cd47ceec9dcf0d
USB mode to make sure the filedescriptor is correct.
Change-Id: I2905eaf27533d935a0458b630372584e353c7160
Reviewed-on: http://gerrit.rockbox.org/294
Reviewed-by: Michael Giacomelli <mgiacomelli@gmail.com>
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Doing a LONG PRESS on a:
- unopened folder will select all its sub-folders
- opened folder will invert the selection of its sub-folders
Change-Id: Ia7fd8dc3b940f60adee3f0314bf6bba5eb2c7b3b
The browser lets the user pick one or more directories in a convinient
GUI browser. The initial directory list is read from a string
(separated by colons) and the resulting list is written back to the same
string (again separated by colons).
Note: The work was initially done by Jonathan Gordon, however I changed
it substantially so I claim autorship.
This selector is going to be used for autoresume and database scan folders.
Change-Id: Id1d3186dad783411eb5c6056ce93f5b6123c7aa0
%V(0,50%,75%,50%,-) - make a viewport at x=0, y=half the lcd height,
75% lcd width and the remaining height (the other half) of the lcd.
Change-Id: If26ccb65e8dc52c9225f3fd6d7b222d770add0f0
Reviewed-on: http://gerrit.rockbox.org/184
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Change-Id: I1583371228ed477b504c135f81cb59a0c3c931e6
Reviewed-on: http://gerrit.rockbox.org/296
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Tested-by: Jonathan Gordon <rockbox@jdgordon.info>
If two yesno screens directly follow each other the button release of the
first one was incorrectly accepted in the second one. The fix exposed another
problem in action.c if action_wait_for_release() is called when no button is
actually pressed. The next press was silently eaten.
Change-Id: Iaa5f246f7ea1fd775606620a989cdaec74a9305e
skin bars now automatically create the touch region the same size
as the bar on touchscreen targets. This means touches will
magically "just work" for reveresed bars (rtl or otherwise).
~5% padding is added on all 4 sides of the region rectangle but
this may need to be tweaked.
Please consider the 'progressbar' and 'volume' touchregion actions
to be deprecated.
Kudos to my new wife for figuring out the bleedingly obvious way to
do this!
Change-Id: I997a7bcaa70fce9885808aae27953c7676e9c2ff
Thiskin refresh trigger apparently causes the skin and list to continuously
refresh, with the side effect that buttons no longer work.
Change-Id: I4439406176890ac46a3f217bfff43c6935a03a7c
Reviewed-on: http://gerrit.rockbox.org/240
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Kudos to funman for figuring out the problem - skin_find_item() rather
stupidly uses the global skin_buffer variable in skin_parser.c which is
fine in the parser EXCEPT it gets changed in skin_render when the sbs
is being redrawn while another skin is loading, so fix this by makeing
skin_find_item() use a local data pointer so a skin_render() during
parsing won't break anything.
Change-Id: I80e1c0efe569c18225e5772159c18ebb21e07332
Also move the definition to config.h
Change-Id: I36bb5020c5e06b2344292bc05e8c13ccc7a6a1ff
Reviewed-on: http://gerrit.rockbox.org/234
Reviewed-by: Nils Wallménius <nils@rockbox.org>