jacqueline
db9e5cce1f
Improve handling of the display
...
- Blank the display when locking to prevent burn-in
- Delay turning the display on until *exactly* after the first lvgl flush
- Init the display in the ui task to avoid blocking the rest of boot
1 year ago
jacqueline
33919e9e3f
Migrate all existing control schemes to the cool new world
1 year ago
jacqueline
ed82063af5
WIP decompose our giant LVGL driver into smaller classes
1 year ago
jacqueline
5f1a6507d8
Warn and block MSC disable if the sd card is busy
1 year ago
jacqueline
654fde5f68
Support disabling automatic database updates
1 year ago
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
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
ailurux
5141c9f0bd
Add time.ticks to lua bridge
1 year ago
ailurux
0426d245c8
Scroll sensitivity configurable, but inverted
1 year ago
ailurux
9512bd97bb
Add buttons for shuffle + repeat track
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
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
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
ee8e523456
Add a basic database reindex screen
2 years ago
jacqueline
c851b789fa
Write up the new input modes to NVS and settings
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
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
320fdeb9d8
Use a service locator instead of passing around subsets of drivers between FSMs
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
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
8eabeedbb9
Make title bar a common component, some ui nits
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