Commit Graph

23 Commits

Author SHA1 Message Date
LiquidFenrir
45349a4ba3 Dynamic icons loading & other improvements (#119)
* 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
2017-12-28 15:30:23 -05:00
LiquidFenrir
f261f152c9 fix zip handles not being closed when file is not found
prevented zip themes/splashes with smdh in them to be deleted
2017-12-09 05:55:42 +01:00
LiquidFenrir
d937ae1716 Major rewrite: less repetition (#101)
* 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
2017-12-02 10:09:38 -05:00
Dylan G
3cfbf3c35b Brought changes over from master/#92
All commits post-this one should be on stable.
2017-10-22 00:59:06 +01:00
337693ca13 Improve no themes interface and create folders on boot 2017-09-09 20:10:36 -04:00
ef456c7e9e Splash previews 2017-09-09 00:12:16 -04:00
62f4356a17 Change splashes to support SMDH and zip files 2017-09-07 10:08:52 -04:00
ZetaDesigns
3e2c5994ca fix dabort when no theme data
themes still wont install like this
2017-09-06 18:33:23 +02:00
saibotu
e46783a3c4 Made buf_to_file always return Result 2017-09-06 15:35:31 +02:00
c4a096249c Fix softlock and make error more descriptive, and fixed preview offset 2017-09-01 11:55:32 -04:00
37f0de5756 Stop loading previews without user button press 2017-09-01 00:29:09 -04:00
d5d48228b3 Fix preview loading for Preview.png 2017-08-31 22:28:52 -04:00
LiquidFenrir
ebd2a9d6ae Several improvements (#9)
* 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
2017-08-31 07:55:00 -04:00
a74c9d9e9c Add beginning parts of a GUI, update README (again) 2017-08-29 14:44:44 -04:00
3fa0d36e41 Add LICENSE header, update README 2017-08-29 08:15:28 -04:00
129eef0f38 Fix Unicode support (thanks @Stary2001) 2017-08-27 23:46:43 -04:00
aa411e7c7b Finish theme scan, add preliminary shuffle install 2017-08-27 22:48:21 -04:00
ae42b9648c Theme install now works, added fast reboot code 2017-08-26 16:00:10 -04:00
6b61ae9e5f Something changed 2017-08-25 17:01:39 -04:00
5fb9d86b62 Nani the fuck 2017-08-09 08:39:33 -04:00
Alex Taber
d337623bd0 Continue rewrite 2017-08-08 15:22:26 -04:00
Alex Taber
99d9dd1206 More stuff 2017-08-02 15:54:40 -04:00
f83ea1f6c4 Wot 2017-08-02 08:07:58 -04:00