Skip to content

Conversation

@shamim-emon
Copy link
Collaborator

@shamim-emon shamim-emon commented Dec 13, 2025

🐛 Root Cause of the Bug

  • All Message List–related display settings were not being loaded from PreferenceStorage; instead, they were retrieved from the default values defined in their corresponding Settings class.
  • Additionally, whenever Message List–related display settings were being saved, they were not persisted because the corresponding storage editors were not committing the changes.

💡 Solution

  • Integrate the message list preferences so they combine correctly with existing general and display settings.
  • Commit changes to the preference store when the corresponding settings are saved.

Copy link
Contributor

@dani-zilla dani-zilla left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we could drop the logging, but I did want to ask if you were able to reproduce this in a newer version of the app. I could not reproduce it on v14 from Google Play or v17 from a fresh debug build, not with the existing views or compose either. Do you have any additional info on how this fix could be tested between the latest beta and this version?

Thanks!

)
}
.combine(messageListPreferencesManager.getConfigFlow()) { generalSettings, messageListSettings ->
logger.debug { "messageListSettings: $messageListSettings" }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Worth noting that logger is currently not recommended:

"Use a net.thunderbird.core.logging.Logger instance via dependency injection instead. " +
        "This class will be removed in a future release.",

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated, now injecting net.thunderbird.core.logging.Logger instance instead as per suggestion.

@shamim-emon
Copy link
Collaborator Author

I think we could drop the logging, but I did want to ask if you were able to reproduce this in a newer version of the app. I could not reproduce it on v14 from Google Play or v17 from a fresh debug build, not with the existing views or compose either. Do you have any additional info on how this fix could be tested between the latest beta and this version?

Thanks!

@dani-zilla I am able to reproduce this on latest debug build. In-case you don't see the issue, toggle Colorize contact pictures value and then restart the app, you will see this value along with any value from MessageList settings is not persisted.

Copy link
Contributor

@dani-zilla dani-zilla left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was able to reproduce it with the force quit method. Thanks for that! Bug seems to be fixed in build and looks good to me. Thanks!

@wmontwe wmontwe changed the title Display Settings reset/mix up when toggling "Colorize contact pictures" fix: display Settings reset/mix up when toggling "Colorize contact pictures" Dec 17, 2025
@wmontwe wmontwe merged commit 22eebd9 into thunderbird:main Dec 17, 2025
13 checks passed
@thunderbird-botmobile thunderbird-botmobile bot added this to the Thunderbird 17 milestone Dec 17, 2025
@shamim-emon shamim-emon deleted the fix-issue-9630 branch December 17, 2025 11:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Display Settings reset/mix up when toggling "Colorize contact pictures"

3 participants