summaryrefslogtreecommitdiff
path: root/apps/gui/skin_engine/skin_engine.c
AgeCommit message (Collapse)Author
2014-01-22Fix red on monochrome.Thomas Martitz
Change-Id: Ice40c81d0d07f7ec2014697e4de446dcb956afe8
2014-01-22skin_engine/backdrops: Have to reload default backdrops from setting when it ↵Thomas Martitz
changed. When skins use the default backdrop (via %X(-) or no %X at all) and the setting changes it needs to be reloaded, otherwise when changing themes the new theme could show the backdrop from the previous theme. The same needs to be done when re-selecting the same theme after USB because the backdrop file was potentially overwritten. Fixes FS#12892 and FS#12942. Change-Id: Ic2d20740cc385fa99667ce8a71507dbda2efceaf
2013-12-30Fix build errorJonathan Gordon
Change-Id: I32e06cc41c70e225622c87539feaca5f92131065
2013-12-29skin_engine: unload skin backdrops when the skins are resetJonathan Gordon
Hopefully this will fix various skin related bugs which happen on usb plug/unplug! Change-Id: Ie1d8378fca38dae02e42ed02a68bdb3663651b4d
2013-06-23skin_engine: Fix crash on skin_reset (e.g. on language change).Thomas Martitz
Change-Id: Ie2da1a1ba9d2dad76e2f1c45abd907c3ede4f56c
2013-06-09Fix warning (move variable into #ifdef section).Thomas Martitz
Change-Id: Ic6ba4b786eef00eab7f20abd5fbf2bcb8977993a
2013-06-09Fix reds (this code needs #ifdef HAVE_ALBUMART)Thomas Martitz
Change-Id: Ia50cd846d5451b0cb5cf3a6f8097ea9fe3b3c60a
2013-06-09skin_engine: Fix albumart logic on skin reloading.Thomas Martitz
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>
2013-02-12skin_engine: Add a debug screen to display skin ram usageJonathan Gordon
Change-Id: Ida9c33211d9360ac88e30a2cf8df9f191bee8b45
2013-02-12Fix (c) notice which was apparently copy/pasted from a completly unrelated fileJonathan Gordon
Change-Id: I465bd6a70e911c7a56213af82b4db64c25c294f7
2013-02-11remove unused membersJonathan Gordon
Change-Id: Ic0a0d300c9b7701c9173121d9d36a4dd4a28d8bd
2012-06-19CHARCELL doesn't have sbs support, so disable it properly.Frank Gevaerts
This actually fixes a nullpointer dereference. Change-Id: Ie3e153d72bcacdce46bfe5a514ff77aebdfd7225
2011-12-20Another round of making local functions staticBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31384 a1c6a512-1295-4272-9138-f99709370657
2011-11-29FS#12412 : Delete old buffer allocation code which has been replaced by ↵Boris Gjenero
core_alloc, and move buffer setup code to core_alloc.c git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31088 a1c6a512-1295-4272-9138-f99709370657
2011-11-28Be less smart about when to reload skins as it caused more problems than it ↵Jonathan Gordon
was worth. If any theme setting is loading from a .cfg reload all skins. Fixes FS#12410 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31081 a1c6a512-1295-4272-9138-f99709370657
2011-11-28Fix FS#12408 - don't load skins too early causing buflib handles to leakJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31080 a1c6a512-1295-4272-9138-f99709370657
2011-11-21Fix the charcell compile error and rmeove an unused #defineJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31039 a1c6a512-1295-4272-9138-f99709370657
2011-11-21skinengine: Load the fms the first time the fm screen is entered instead of ↵Jonathan Gordon
on boot to save some ram git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31038 a1c6a512-1295-4272-9138-f99709370657
2011-11-21skinengine: Rework skin loading so skins can be un/loaded individually. This ↵Jonathan Gordon
also means that loading a .cfg which doesnt change themes shouldnt have them reloaded git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31037 a1c6a512-1295-4272-9138-f99709370657
2011-11-19Get rid of a really annoying #ifdef line to check if backdrop support should ↵Jonathan Gordon
be enabled git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31027 a1c6a512-1295-4272-9138-f99709370657
2011-11-15Use buflib for all skin engine allocations.Jonathan Gordon
Massive thanks to Michael Chicoine and other testers for finding the early bugs. This removes all skin memory limitations git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30991 a1c6a512-1295-4272-9138-f99709370657
2011-10-15Changed the FOR_NB_SCREENS macro to always be a for loop that declares its ↵Björn Stenberg
own loop variable. This removes the need to declare this variable in the outer scope. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30756 a1c6a512-1295-4272-9138-f99709370657
2011-10-05Revert r30599 "Check for the magic file "/.rockbox/skin_buffer_size.txt" [...]"Thomas Martitz
It's not clear whether a user setting is the right/accepted fix for the skin buffer. But even if it is, this implementation of it is considered bad, even by the author. See http://www.rockbox.org/mail/archive/rockbox-dev-archive-2011-09/0054.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30718 a1c6a512-1295-4272-9138-f99709370657
2011-09-28fix FS#12295Jonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30614 a1c6a512-1295-4272-9138-f99709370657
2011-09-25fix APPLICATION build errorsJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30601 a1c6a512-1295-4272-9138-f99709370657
2011-09-25fix warningsJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30600 a1c6a512-1295-4272-9138-f99709370657
2011-09-25Check for the magic file "/.rockbox/skin_buffer_size.txt" on bootup which ↵Jonathan Gordon
can have a number which is the amount of kilobytes to allocate for the skin buffer. This is only checked on boot so if you need to change it you must reboot to enable. Currently the default size is 80KB on colour targets which can be way too much or not enough for users. The format of the /.rockbox/skin_buffer_size.txt file is simply a number (so 120 if you want 120 kilobytes), NO trainling spaces or text of any kind git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30599 a1c6a512-1295-4272-9138-f99709370657
2011-09-24FS#12273 - use buflib for font storage. thanks to the testers :)Jonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30589 a1c6a512-1295-4272-9138-f99709370657
2011-09-15skin_engine: make sure to free all buflib allocations so we dont leak ↵Jonathan Gordon
handles/memory git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30554 a1c6a512-1295-4272-9138-f99709370657
2011-09-11Fix albumart which r30500 broke (FS#12271)Jonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30501 a1c6a512-1295-4272-9138-f99709370657
2011-09-11Fix FS#12270 - properly initialiase the wps_data struct so skin_data_reset() ↵Jonathan Gordon
doesnt crash later git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30499 a1c6a512-1295-4272-9138-f99709370657
2011-08-30GSoC/Buflib: Add buflib memory alocator to the core.Thomas Martitz
The buflib memory allocator is handle based and can free and compact, move or resize memory on demand. This allows to effeciently allocate memory dynamically without an MMU, by avoiding fragmentation through memory compaction. This patch adds the buflib library to the core, along with convinience wrappers to omit the context parameter. Compaction is not yet enabled, but will be in a later patch. Therefore, this acts as a replacement for buffer_alloc/buffer_get_buffer() with the benifit of a debug menu. See buflib.h for some API documentation. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30380 a1c6a512-1295-4272-9138-f99709370657
2011-03-07move code around to make checkwps compileJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29536 a1c6a512-1295-4272-9138-f99709370657
2011-03-07Merge a bunch of code which is 99% identical so it makes it easier to add ↵Jonathan Gordon
more of these later git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29535 a1c6a512-1295-4272-9138-f99709370657
2010-12-06Get rid of get_user_file_path and do the path handling in wrappers for ↵Thomas Martitz
open() and friends. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28752 a1c6a512-1295-4272-9138-f99709370657
2010-11-05Undo the part of r28480 that caused the simulator to also use host malloc.Thomas Martitz
We want simulators to simulate target code where possible, that includes memory constraints and memory allocation schemes. It also removed the sim's ability to show the theme's ram usage. Use malloc only in application builds. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28498 a1c6a512-1295-4272-9138-f99709370657
2010-11-04RaaA: Use the host's malloc() for the skin engine.Jonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28480 a1c6a512-1295-4272-9138-f99709370657
2010-10-16skin_engine: struct gui_skin can be staticBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28289 a1c6a512-1295-4272-9138-f99709370657
2010-09-14fix errors, warnings, tabsJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28075 a1c6a512-1295-4272-9138-f99709370657
2010-09-14new file got lostJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28074 a1c6a512-1295-4272-9138-f99709370657