Skip to content

Modernize FetchingMailSettings#11044

Open
shamim-emon wants to merge 24 commits into
thunderbird:mainfrom
shamim-emon:fix-issue-11040
Open

Modernize FetchingMailSettings#11044
shamim-emon wants to merge 24 commits into
thunderbird:mainfrom
shamim-emon:fix-issue-11040

Conversation

@shamim-emon
Copy link
Copy Markdown
Collaborator

@shamim-emon shamim-emon commented May 25, 2026

This PR migrates the Fetching Mail Settings screen (including the Advanced version) from the old XML to Jetpack Compose. It is part of the ongoing Thunderbird for Android UI modernization effort and fully replaces the legacy UI while preserving all existing functionality.

What changed

  • Added a new reusable Compose component ActionText (with preview) and integrated it into SettingItem

  • Added necessary string resources and FetchingMailSettingsId

  • Updated Gradle dependencies, navigation (AccountSettingsRoute, FeatureLauncherTarget), and legacy AccountSettingsFragment

  • Introduced the full Compose architecture:

  • FetchingMailSettingsContract

  • FetchingMailSettingsBuilder

  • UpdateFetchingMailSettings UseCase + implementation

  • FetchingMailSettingsViewModel

  • FetchingMailSettingsContent / FetchingMailSettingsScreen

  • AdvancedFetchingMailSettingsContent / AdvancedFetchingMailSettingsScreen

  • Follows the established MVI (Model-View-Intent) architecture with Unidirectional Data Flow (UDF) using the Contract pattern already adopted across the app

  • Added unit tests for the builder, ViewModel, and UseCase

…Settings and AccountSettingsRoute.AdvancedFetchingMailSettings
…Contract.SettingsBuilder and FetchingMailSettingsViewModel in AccountSettingsModule
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 25, 2026

Validation Passed: All report and feature-flag labels are correctly set.

@shamim-emon shamim-emon added the report: include Include changes in user-facing reports. label May 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

report: include Include changes in user-facing reports.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modernize Fetching Mail Settings Using Jetpack Compose

2 participants