Restore default dark mode & fix migration for 3.x / 4.x users by bjorkert · Pull Request #514 · loopandlearn/LoopFollow

Summary

This change restores dark mode as the default appearance and fixes a migration issue affecting users on 3.x and 4.x.

Previously, the migration logic only handled users upgrading from pre-3.0 versions. As a result, users already on 3.x or 4.x could lose their expected appearance setting during migration.

What’s changed

  • Restores dark mode (.dark) as the default value for appearanceMode
  • Adds a new migration step to correctly handle:
    • Users coming from 3.x and 4.x
    • Legacy forceDarkMode stored via StorageValue
  • Ensures appearance is migrated consistently:
    • true.dark
    • false.system

Why

  • Dark mode was no longer the default
  • Migration logic did not cover all upgrade paths, leading to incorrect appearance settings for existing users

Impact

  • No behavior change for users with an explicit appearance setting
  • Correct and predictable migration for all users, regardless of upgrade path