* Switch from pp2d to citro2d
* Fix various bugs by updating libarchive
* Begin work on translation infrastructure
* Switch to libpng for various improvements
* Fixed race condition in icon scrolling
* Use spritesheets to load sprites marginally faster and use less memory
* Various Readme fixes
* Huge improvements to QR reader speed and screen tearing
* Don't try to preview themes/splashes when there are none
* Prevent playing audio when ndspInit() fails
* Don't wait for audio to load before displaying preview
* Fix bug when shuffle themes didn't have BGM
* Fix bug caused by files not being zeroed out when created
* change fs to use a FS_Path argument for remake_file and buf_to_file
* more debug information when downloading
* browser caching v1: poc, works and is fast but not ideal
* add preview to cache
* this wasnt meant to be added now
* icons are black, but it's a start
* after testing, info_buffer in load_smdh_icon is for some reason all 0
* working! same speed as pre-threading (I think)
but the icons lag behind a bit.
Still, should allow for infinite themes
* not needed anymore
* fix icons not being loaded when switching modes
* stop trying to load icons if there arent enough entries
* swapping logic almost there...
* only need to update when on the main screen
* fix blind spot and typo
* allow optimizations maybe?
maybe will break stuff. just revert if it's the case
* fix blind spot when going up after cycling
* add swapping when changing 1 screen at a time (left/right)
* not needed anymore, since icon ids are fixed
* simpler scrolling
* dont reload everything when cycling
* other method for storing ids, maybe better logic later
* fix crash
* attempt at better and clearer algorithm for swapping
* optimization, swapping still broken but this was needed
* fix cycling/using left resulting in reversed icons
* fix icons scrolling in reverse
and fix the bug that introduced (same as switch-case method): scroll not following the selected entry when using left/right
* don't break when using left/right near the top/end
* correctly return from failed realloc during entries load
* move freeing the entries and killing the icon updating thread to exit_function
* fix icons being shifted the wrong value when cycling
* only exit using the shutdown screen method when needed
* show simple loading screen for themes and splashes
* only have the thread when needed
should consume less battery for people with low amount of splashes and themes
* fix instructions showing over the "no X found" screen
* fix instructions showing over confirm text
* fix overlapping and going out of bounds with few entries
* add quitting preview and qr mode with B
* add touchscreen controls
* cleaner BETWEEN macro
* only allow changing screens with touchscreen when arrows are visible
* tabs vs spaces
* fix selecting an entry that's not there using the touchscreen
and allow holding for selecting individual entries (not using the arrows)
* fix crash when deleting all entries and downloading one with QR
* add indicator for already installed themes/splashes
threaded as not to slow down initial loading too much, and imo cool effect as they load
* optimization for theme installed check
* make icon swapping thread higher priority to prevent problems with searching the installed themes/splashes
* add indicator with number of themes and selected theme
* add X to reload icons if it breaks
* add touchscreen controls:
- toggle shuffle
- toggle preview
- reload icons
- switch modes
- enable QR
* more usable thread args
* fix crash when closing the application too close to launch
* add hack to solve the scrolling problem.
Warning: will cause some lag for about 1-2 seconds, so I recommend using the jump menu
this will be removed once the bug is figured out
* less magic numbers
* part 2: installing themes
* fix simple theme install
that wasnt such a good idea
* fix shuffle count
* fix shuffle theme install
* change padding name
* first step of rewriting: at least it compiles™
* fix tabs/spaces
* fix dabort on load
* fix preview crash
* sorting isnt done outside of loading
* step one of making remake_file useless
* camera/qr code cleanup
* fix dabort when folder is empty, and bring back preview optimization
* fix button for switching modes and show mode when folder is empty
* fix scanning qrs
* no more splash discrimination
* add debug helpers
* fix theme installing
turns out that wasnt such a good idea
* fix battery icon
* mistake
* themeplaza compatibility
* make use of load_data
* don't drink and copy-paste, kids
* fix user-agent
* remove useless
* cleanup includes
* not even used
* add splash buttons
* upgrade buttons drawing
* fix controls while preview is up
* improve positions
* make use of the return value for safety
* get rid of warnings
(sizeof(wchar_t) is the same as sizeof(u32), so no problem there)
* dynamic preview loading
fix crash when too many themes have previews available
* fix icon filename
* update pp2d to fix preview problem
* several improvements:
- rely on a single header for simple/common headers
- cleaned up main by putting the interface drawing function in its own file
- load previews from .zip themes (may cause some loading times when launching
- only need 1 shuffle image thanks to pp2d's blending abilities
* not needed anymore
* fix preview color and position
* forgot
* add proper icon loading
thanks steveice10 for bannertool which this was pretty much taken from
* only add proper themes to the list
* add slightly more space between the icon and the name
* not monospace, the little movement every blink is annoying
* fix typo