jacqueline
175bfc4e3e
WIP rewrie audio pipeline+fsm guts for more reliability
1 year ago
jacqueline
dadac304dd
Add very basic usb msc ui
1 year ago
jacqueline
684ff50ef4
Add support for screens declaring that they can't be popped
...
Needed as prep for usb msc support; you really shouldn't leave the MSC
settings screen until you've disabled usb msc.
1 year ago
jacqueline
4cd3c187f9
Add exact display size to nvs, since it can vary
1 year ago
jacqueline
eba5adeb8c
Show the now playing screen after being locked for a while
1 year ago
jacqueline
ef72b25660
use prototype inheritance for lua screens, rather than functions
...
this gives us a way to give each screen nice little hooks, like
'onShown' and 'onHidden'. later we can use these hooks to disable
bindings for screens that aren't in-use.
1 year ago
ailurux
5141c9f0bd
Add time.ticks to lua bridge
1 year ago
ailurux
26ae027d67
Sensitivity value now between 0 and 255
1 year ago
ailurux
0426d245c8
Scroll sensitivity configurable, but inverted
1 year ago
ailurux
9512bd97bb
Add buttons for shuffle + repeat track
1 year ago
Robin Howard
7d66572b0f
Adds base dropdown-list styles.
...
Fixes dropdown contents being painted directly on top of anything
sitting below them.
1 year ago
jacqueline
aff28342d9
let the bluetooth stack handle its own discovery state
1 year ago
jacqueline
299f3cc48f
Preserve the queue when going into standby
1 year ago
jacqueline
ee867f2dbc
add an indicator for database updates
1 year ago
Robin Howard
3f1fadbeef
Plumb queue next+previous through to Lua, incl. with stubs and docs.
1 year ago
jacqueline
cd650b30bd
fix some lua stack leaks + add a console func to help debug
1 year ago
jacqueline
71b4673039
all screens basically working, but bluetooth is rough
1 year ago
jacqueline
7cdcd44e0c
Begin migration of remaining screens to Lua
1 year ago
jacqueline
55bde70b96
add accurate esp and samd versions + expose this info to lua
1 year ago
jacqueline
44fdf69674
tweak wheel sensitivity, improve AKS for centre button
1 year ago
jacqueline
0db85f5e9e
move default theme into styles, for easier lua overrides
1 year ago
jacqueline
34cae4e6e4
add an alerts module for lua, and implement a volume indicator with it
1 year ago
jacqueline
ca5d7b867c
Add shuffle and repeat options for the playback queue
1 year ago
jacqueline
3f7f199cb9
Remove pre-iterator concepts
...
- No more IndexRecord/Result/dbGetPage nonsense
- Queue is just track ids
- i am so tired and have so much to do
1 year ago
jacqueline
852ce7b917
Add a back button gesture in clickwheel mode
1 year ago
jacqueline
e6844a68b6
implement play/pause
1 year ago
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
2 years 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