Several UI fixes (#1730)

## Description
- Fixes not scrolling to the last season on series overview if there is
a Specials season
- Apply the "bouncing" fix from #1543 to all applicable card types
- Fix card images not automatically reloading when changing image type
on grid pages
- Get rid of the sticky headers which overlap items on view options
dialogs and use a fixed header as elsewhere in the app

### Related issues
Related to #1708 which didn't introduce the bug, but made it much more
likely to occur

### Testing
Emulator & unit tests

## Screenshots
N/A, the sticky header UI changes are very minor

## AI or LLM usage
None
This commit is contained in:
Damontecres 2026-07-21 17:20:59 -04:00 • committed by GitHub
parent 2aae7eed38
commit 0a4ab7a547
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 159 additions and 130 deletions

View file

@ -28,6 +28,7 @@ class TestFindIndexByNumberOrId {
val epS02E03 = create(3, 2)
val epS02E04 = create(4, 2)
val epS02E05 = create(5, 2)
val epS02E06 = create(6, 2)
val epS00E08 = create(8, 0)
val epS00E02 = create(2, 0)
@ -70,6 +71,30 @@ class TestFindIndexByNumberOrId {
}
}
@Test
fun `Test last index with zero start`() =
runTest {
val episodes =
BlockingList.of(
listOf(
create(0, 2),
epS02E01,
epS02E02,
epS02E03,
epS02E04,
epS02E05,
epS02E06,
),
)
findIndexByNumberOrId(
targetNum = 6,
targetId = epS02E06.id,
list = BlockingList.of(episodes),
).let { index ->
Assert.assertEquals(6, index)
}
}
@Test
fun `Test missing episodes`() =
runTest {