thunderbird / thunderbird/thunderbird-android
Message Reader — Compose Rewrite: Create Message Reader State Data Object
@dani-zilla is already working on this.
Since Apr 9, 2026.
- Dominant language
- Kotlin
- Stars
- 14k
- Forks
- 2.8k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 57
Description
The current implementation of the Message View/Reader doesn't just use views, it largely uses the MVC pattern. There are a few instances where state for the view is pulled from multiple data objects and provided from a variety of sources. This can create an issue lacking a single source of truth, and the likelihood of creating a mutable state is too high. Performance will suffer in a Jetpack view with this.
Create a data object that can encapsulate the data we need to display a message reader view, to eventually be prepared by a viewmodel we'll create or a state machine owned by the viewmodel.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.