Android TV fork release v1.0.11 (on upstream audiobookshelf-app v0.13.0-beta).
Highlights
- Fixed the long-standing grid focus column-drift bug — on virtualized bookshelf grids (library / series / collections / playlists), a fast Down-scroll could land focus in the wrong column (the last column). Root-caused to the native Android-TV focus engine re-homing focus when the
LazyBookshelfvirtualizer unmounts the focused card mid-scroll; fixed by tracking and re-asserting the user's intended column. - TV init hardening (I2) — inject the
android-tvclass atWebViewClient.onPageStartedso it lands before the Nuxt TV plugin boots (fixes the occasional "first navigation dead on cold start" race), with a JS-side poll fallback. - Hide "Go to Web Client" in the side drawer on Android TV — TV devices typically have no browser, so the action dead-ended; now hidden on TV (phone/tablet unchanged).
- Spatial-nav performance (I4) — per-keypress
getBoundingClientRectsnapshotting removes repeated forced reflows. - Selector robustness (I5) — stable
data-tv-*hooks replace fragile Tailwind-class selectors for the side drawer and play button. - Loading-overlay dots follow the focus-ring color on TV.
Verified via the full 13-batch on-device smoke on the Google TV Streamer 4K.
APK: abs-android-tv-release-1.0.11.apk
SHA256: 4B8A653D98CB1AE077A52253CA0D300D3CD675E991DBAAAF2C5C273B6BB21B67