UP Navigation from Top 10 Row Skips Trending Row and Jumps to Carousel (TV Hardware Only)
- Dominant language
- Kotlin
- Stars
- 1.3k
- Forks
- 396
- PR merge metrics
- No merged PRs in 30d
Description
## Description
I'm experiencing a focus navigation issue on the JetStream HomeScreen when running on real TV hardware. When navigating **UP** from the Top 10 Movies row, focus skips the Trending row entirely and jumps directly>
## Steps to Reproduce
1. Launch JetStream app on real Android TV hardware
2. Navigate DOWN from Carousel to Trending row (works correctly)
3. Navigate DOWN from Trending to Top 10 Movies row (works correctly)
4. Press **UP** from Top 10 Movies row
5. **Expected:** Focus moves to Trending row
6. **Actual:** Focus jumps directly to Carousel, skipping Trending row
## Navigation Flow
**DOWN navigation (works correctly):**
```
Carousel → DOWN → Trending → DOWN → Top 10 Movies ✅
```
**UP navigation (broken):**
```
Top 10 Movies → UP → Trending (SKIPPED) → Carousel ❌
```
## Environment
- **Device:** Onn 4K Pro (new Google TV version)
- **Issue reproduces:** Real TV hardware only
- **Issue does NOT reproduce:** Android TV Emulator (works correctly on emulator)
## Observations
- DOWN navigation works perfectly in all cases
- UP navigation specifically from Top 10 row exhibits this behavior
- On emulator, UP navigation correctly stops at Trending row
- On real TV hardware, focus appears to briefly touch Trending before jumping to Carousel
## Questions
1. Is this a known limitation of Compose TV LazyColumn focus handling on real hardware?
2. Is there a recommended pattern to prevent focus from jumping to the Carousel when navigating UP?
3. I noticed `Top10MoviesList.kt` uses `AnimatedVisibility` to hide the carousel when the immersive list has focus - is this the intended workaround for this type of issue?
Any guidance would be appreciated. Thank you!
Contributor guide
Research direction
Start by reproducing the focus path on the real Onn 4K Pro hardware and compare it with the emulator. Then inspect Top10MoviesList.kt, especially its AnimatedVisibility behavior, and confirm that pressing UP from Top 10 Movies consistently settles on Trending rather than jumping to Carousel.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- frontend, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100