android / android/nowinandroid
[Bug]: Significant amount of overdraw throughout the app
- Dominant language
- Kotlin
- Stars
- 21.8k
- Forks
- 4.6k
- Avg merge
- 19h 20m
- Merged PRs (30d)
- 2
Description
### Is there an existing issue for this?
- [X] I have searched the existing issues
### Is there a StackOverflow question about this issue?
- [X] I have searched StackOverflow
### What happened?
If you enable "Debug GPU overdraw" in the Developer options, you'll see most of the app is pink (3 levels of overdraw) or red (4+ levels of overdraw). A big chunk of this is coming from the backgrounds. For example, NiaBackground creates a Surface, then NiaGradientBackground creates another Surface and also potentially draws on top, then Scaffold creates another Surface (though it looks transparent), and then the content is drawn on top of that.
### Relevant logcat output
_No response_
### Code of Conduct
- [X] I agree to follow this project's Code of Conduct
Contributor guide
Research direction
Start by inspecting the NiaBackground and NiaGradientBackground components, then examine how Scaffold and the app content add surfaces. Reproduce the issue with Android's Debug GPU overdraw option and trace the overlapping backgrounds; done means the redundant overdraw is reduced throughout the affected screens.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100