jacqueline
7c6eb2997c
Migrate 'now playing' screen to lua
1 year ago
jacqueline
b07bfbc6c7
Add a second font, flesh out browser screen
1 year ago
jacqueline
9eb5ae6e94
Use protected mode for lua callbacks wherever possible
1 year ago
jacqueline
effac1917a
Use C functions for the backstack, instead of a lua module
...
Working with the default group and root kinda sucks if you have to do it
from lua!
1 year ago
jacqueline
71ed09a6f7
Add two-way databinding for lua, and flesh out the lua statusbar
1 year ago
jacqueline
8a0a167adb
Convert the main menu screen to lua lol
1 year ago
jacqueline
c6f2b52331
Improve bt scanning responsiveness
1 year ago
jacqueline
782e8dc8c2
Add better controls for queue manipulation
2 years ago
jacqueline
6c20eafd05
First pass at having some kind of design and theming
2 years ago
jacqueline
ee8e523456
Add a basic database reindex screen
2 years ago
jacqueline
28633e857f
Implement UI for enqueuing instead of replacing the current track
2 years ago
jacqueline
5c04e2ad8d
Neaten up the various kinds of inputs, and move volumes to The New Way
2 years ago
jacqueline
c851b789fa
Write up the new input modes to NVS and settings
2 years ago
jacqueline
09f129662e
Add scroll velocity + more input methods
2 years ago
jacqueline
7d5536e2ab
Generalise the lvgl input driver in preparation for more input methods
2 years ago
jacqueline
6a47edcd35
Use databinding for the top bar. It's so nice now!
2 years ago
jacqueline
f09ba5ffd5
Use bindey for databinding instead of hand rolling ui updates
2 years ago
jacqueline
4d99d22e10
std::string -> std::pmr::string in psram
2 years ago
jacqueline
b192975cb1
make bluetooth pairing ui functional
2 years ago
jacqueline
0ea358ab81
Make the onboarding flow basically work. Much still to do!
2 years ago
jacqueline
b0aa9ab391
Fix ui nits for playback screen
...
The top bar now updates properly when starting playback, and the
upcoming list items no longer marquee.
2 years ago
jacqueline
86296c187f
Use interrupt-based spi for the display
...
This solves our "audio stutters while scrolling" problem better! Turns
out the real root cause was the polling SPI driver blocking a whole CPU
during playback.
2 years ago
jacqueline
b0d745d02d
Flesh out onboarding a little, and add a way to get into it
2 years ago
jacqueline
0032896251
Move UI task to priority 0 during playback
...
Also other misc task cleanup
2 years ago
jacqueline
d5d6e3993c
Support changing max volume, persisted to nvs
2 years ago
jacqueline
320fdeb9d8
Use a service locator instead of passing around subsets of drivers between FSMs
2 years ago
jacqueline
4247c9fe7d
store the screen brightness in nvs
2 years ago
jacqueline
f2bb2e2528
Add a brightness slider to settings
2 years ago
jacqueline
c214d4b40e
Add some more icons, and reflect play/pause in top bar
2 years ago
ailurux
6f4ace1dd4
Custom themes and top bar styling
2 years ago
jacqueline
3a0c42f924
Move battery measurement to its own class
2 years ago
jacqueline
795f268737
Add placeholder settings UI
2 years ago
jacqueline
3b3bc64d19
Add modal dialog support
2 years ago
jacqueline
d8533c42df
Start on basic onboarding screens
2 years ago
jacqueline
9d33c33c8d
Lock button does that same thing always
2 years ago
jacqueline
7197da21f6
Basic playlists for upcoming
...
Beware under-testing and bugs. Just getting something barebones in so
that I can do rN+1 bringup
2 years ago
jacqueline
b6bc6b9e47
Ui polish and fleshing out
2 years ago
jacqueline
2dc700b12f
Fix browser navigation crashes
2 years ago
jacqueline
8eabeedbb9
Make title bar a common component, some ui nits
2 years ago
jacqueline
50bb261f67
Make now playing screen interacting, including nice scrolling
2 years ago
jacqueline
ae076936ae
Fix browser view jank
2 years ago
ailurux
d1d4b4a1ab
Add theme class
2 years ago
jacqueline
39f7545cd5
wire up the playing screen with some real data
...
Includes implementing song duration calculation for CBR MP3 files
2 years ago
jacqueline
2f16d23002
Start on wiring up playback screen to real data
2 years ago
jacqueline
75955fc47c
Reset styles, flesh out playback and browser screens
2 years ago
jacqueline
191441ebe2
Add missing files >.<
2 years ago
jacqueline
80170642ea
Add basic browsing and playing ui
2 years ago
jacqueline
371f0a20ca
Clean up gpios interface
2 years ago
jacqueline
0347555d5b
Start on converting gpio expander interupts to fsm events
2 years ago
jacqueline
9763cc955c
Improve encoder driver
...
It actually works and clicks now!
Still a bit rough though. Need to dive into lvgl internals to work out
what it's doing with enc_diff
2 years ago