jacqueline
c6f2b52331
Improve bt scanning responsiveness
1 year ago
jacqueline
2ef022a2f9
Remove loading spinner for 'Coming up'
...
it's really slow!
2 years ago
Robin Howard
18d90051c9
Annotates the kTag with maybe_unused; they're only used for logging.
2 years ago
jacqueline
4f8c127da9
Use an mutable struct + const instead of an immutable class
2 years ago
jacqueline
782e8dc8c2
Add better controls for queue manipulation
2 years ago
jacqueline
2eb7eaa2a6
Go straight to the playback screen after 'play now'
2 years ago
jacqueline
20d1c280a7
Remove templating of Continuation
2 years ago
jacqueline
53cf476876
Remove mV from top bar, now that we know it's not the issue
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
f2bad894cd
Show battery voltage in top bar
2 years ago
jacqueline
c876c00654
add a fun and cute little loading state :)
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
252f685ef1
Make NVS access synchronous again
...
Everything relevant is back in internal ram, and likely to stay there.
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
382d82a14b
Fix bad merge
2 years ago
jacqueline
d5d6e3993c
Support changing max volume, persisted to nvs
2 years ago
jacqueline
697d231484
Fix incorrect settings submenu
2 years ago
ailurux
28452e77e1
Some fixes to the top bar widget style
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
jacqueline
85379b359c
Add some cool battery icons
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
a1327763ab
Support play/pause toggling
2 years ago
jacqueline
0f5cf25e73
More performance and usability tweaks
...
- pin ui and decoder to opposite cores
- disable touch wheel when controls are locked
2 years ago
jacqueline
485e9adfce
Performance tweaks for smoother tunes
...
- Pin the decoder task to APP_CORE to reduce context switches
- Increase sample buffer sizes
2 years ago
jacqueline
795f268737
Add placeholder settings UI
2 years ago
jacqueline
3b3bc64d19
Add modal dialog support
2 years ago
jacqueline
394e3e9466
Throttle framerate a little more
2 years ago
jacqueline
764b01e913
Add idle->standby support when locked and no music
2 years ago
jacqueline
d8533c42df
Start on basic onboarding screens
2 years ago
jacqueline
49f82d2f3d
Use a timer to keep framerate consistent
2 years ago
jacqueline
9d33c33c8d
Lock button does that same thing always
2 years ago
jacqueline
10120f9a92
ux fixes
2 years ago
jacqueline
f94be3db2f
make event queue go faster
2 years ago