austinried
c6d837ae0d
shrink the header logo and blur the arrow shadow
2026-10-04 00:29:52 +00:00
austinried
e98d5ad900
put the logo in the library header
2026-10-04 00:29:52 +00:00
austinried
2fae54b708
shadow the artist back arrow
2026-10-04 00:29:52 +00:00
austinried
a365491e42
drop the artist header scrim, shadow the title, space the grid
2026-10-04 00:29:52 +00:00
austinried
228fe08783
trim the library header, enlarge artist art, fix album title color
2026-10-04 00:29:52 +00:00
austinried
d4cf5bc4ca
align the library headline height with the title bar
2026-10-04 00:29:52 +00:00
austinried
f3ad1a0ba2
make the artist header full-bleed at a fixed height
2026-10-04 00:29:52 +00:00
austinried
dd660597fb
fetch full-res artist art and match the old artist layout
2026-10-04 00:29:52 +00:00
austinried
53875b3640
open an artist's albums from the artists tab
2026-10-04 00:29:52 +00:00
austinried
70ffdf7ce9
cover the drag drop target mapping
2026-10-04 00:29:52 +00:00
austinried
e76976dfdf
fix drag drop target, serialize queue edits, guard empty ranges
2026-10-04 00:29:52 +00:00
austinried
bab303ef91
anchor the queue window at the playing track
2026-10-04 00:29:52 +00:00
austinried
92d1baa930
request the initial queue scroll and settle it before loading
2026-10-04 00:29:52 +00:00
austinried
3438c64428
do not extend the queue window until it is centred
2026-10-04 00:29:52 +00:00
austinried
147916ff06
fix queue delete latency, reorder hitch and open scroll
2026-10-04 00:29:52 +00:00
austinried
bb42975bb4
animate queue edits and focus the playing track on open
2026-10-04 00:29:52 +00:00
austinried
a682cfc1cb
reorder the queue with the reorderable library
2026-10-04 00:29:52 +00:00
austinried
68ca600bb5
key queue rows and keep the dragged row composed
2026-10-04 00:29:52 +00:00
austinried
821a2b02a2
keep artist and playlist rows at a fixed two-line height
2026-10-04 00:29:52 +00:00
austinried
03c58a0c36
show the artist as the song row subtitle
2026-10-04 00:29:52 +00:00
austinried
56d2a3c326
keep song rows a fixed two-line height
2026-10-04 00:29:52 +00:00
austinried
5492a57e09
track the finger position while dragging queue rows
2026-10-04 00:29:52 +00:00
austinried
c2ecc63fe5
fix the queue paging refresh key and drag edge detection
2026-10-04 00:29:52 +00:00
austinried
2d64826164
put the queue button at the bottom left of now playing
2026-10-04 00:29:51 +00:00
austinried
59a4bee51b
cover pause-free undo with tests
2026-10-04 00:29:51 +00:00
austinried
dde78bb9fb
keep playback going through undo and polish the queue drag
2026-10-04 00:29:51 +00:00
austinried
7fc142ce6f
add a one-step undo and harden queue edits
2026-10-04 00:29:51 +00:00
austinried
e87d176155
add a queue view with jump, remove and reorder
2026-10-04 00:29:51 +00:00
austinried
853f37f14d
stop committing the roborazzi screenshots
2026-10-04 00:29:51 +00:00
austinried
320a9db597
stop syncing from rewriting unchanged rows
2026-10-04 00:29:51 +00:00
austinried
ebe76cd5bb
play the songs list from the songs tab
2026-10-04 00:29:51 +00:00
austinried
131b0d56a6
run ci as a single job
2026-10-04 00:29:51 +00:00
austinried
659df47c14
choose the stream bitrate and format from settings
2026-10-04 00:29:51 +00:00
austinried
6e4e911f95
show the playlists tab before songs in the library
2026-10-04 00:29:51 +00:00
austinried
e7cfe7a840
document the playback queue model and mark generated files
2026-10-04 00:29:51 +00:00
austinried
7abf01c5ce
add queue, migration and playback controller tests and goldens
2026-10-04 00:29:51 +00:00
austinried
ed9d74d5ae
add the mini player and now playing screen
2026-10-04 00:29:51 +00:00
austinried
592c27c99c
add media3, the playback session and the sql-backed queue
2026-10-04 00:29:51 +00:00
austinried
143f2accb7
document the phase 2 slice, add ktlint to ci, and warm the gradle cache
2026-10-04 00:29:51 +00:00
austinried
177e5ad108
add screenshot goldens and the title collapse gesture test
2026-10-04 00:29:51 +00:00
austinried
87cab9d805
add the browse ui: library tabs, detail screens, settings and server setup
2026-10-04 00:29:51 +00:00
austinried
3f91a29850
add preferences, paging reads, repositories and sync status
2026-10-04 00:29:51 +00:00
austinried
46bc95104d
add the phase 2 dependencies, ktlint and release shrinking
2026-10-04 00:29:51 +00:00
austinried
2dc6d49948
document the architecture, implementation plan, and agent guidance
...
adds docs/architecture.md (stack, layers, data model, sync, search, networking, testing, CI), docs/implementation-plan.md (phases and status), and AGENTS.md for agents and contributors
2026-10-04 00:29:51 +00:00
austinried
760e951128
add native integration tests and a nushell harness
...
SubsonicSourceIntegrationTest runs against locally started navidrome and gonic; tools/integration-test.nu downloads the test music once, starts both servers, seeds data, runs :app:integrationTest, and tears everything down.
2026-10-04 00:29:51 +00:00
austinried
7bc1bd9a19
add unit tests for the data layer
...
MockWebServer client tests, XML mapping (including timestamp parsing), source fallback, and sync/search against an in-memory Room DB using the bundled SQLite JVM driver.
2026-10-04 00:29:51 +00:00
austinried
2c377f0f22
add the subsonic data layer on Room 3
...
SubsonicClient (token/plaintext auth, XXE-hardened parsing, root validation), SubsonicXml mapping (ISO-8601 with fractions and offsets), SubsonicSource (paged albums/ranks, search fallback), Room 3 entities/DAOs with diff-based sync pruning and an FTS5 trigram search index.
2026-10-04 00:29:51 +00:00
austinried
967b733925
update the toolchain, devshell, and build configuration
...
AGP 9.4.1 / Gradle 9.7.1 / Kotlin 2.3.10 (AGP built-in Kotlin), compileSdk and targetSdk 37, Room 3 with KSP schema export, and nushell/navidrome/gonic in the devshell plus a direnv .envrc. Adds a dedicated :app:integrationTest task and excludes the integration class from the unit test tasks.
2026-10-04 00:29:51 +00:00
austinried
6b6758a9b0
disable auto backup
2026-10-04 00:29:51 +00:00
austinried
67ef1626dd
keep allowBackup enabled so server settings survive device changes
2026-10-04 00:29:51 +00:00