New
- Real-time sync via Socket.IO - library items, series, collections, and user data update automatically when changes happen on the server or another device
- Online status and last seen via Socket.IO
- Error messages for playback failures (#60)
- Chapter list shows finished/current/upcoming states with auto-scroll to current chapter (#61)
- Spaced out controls in expanded player view
Fixes
- Fix casting for multi-track books and keep cast alive when phone locked
- Fix background progress loss with independent save timer
- Cancel pending media button click on BT disconnect
- Add download init timeout and async file checks
Other
- Parallelize settings init, reduce unnecessary rebuilds, clean up lint warnings
- Add remove-from-queue with swipe-to-dismiss