Skip to content

fix(sync) - Prevent home row toggles from re-enabling during profile sync#936

Open
mattsigal wants to merge 2 commits into
Moonfin-Client:mainfrom
mattsigal:bugfix/home-row-toggles-sync-pairing
Open

fix(sync) - Prevent home row toggles from re-enabling during profile sync#936
mattsigal wants to merge 2 commits into
Moonfin-Client:mainfrom
mattsigal:bugfix/home-row-toggles-sync-pairing

Conversation

@mattsigal

@mattsigal mattsigal commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator

Pull Request

Summary

Fixes an issue where home row toggles for "Rewatch", "Since You Watched", Seerr lists, IMDb lists, TMDB lists, and Radarr/Sonarr Calendars automatically re-enabled themselves after profile synchronization or app restarts, causing me to think I was losing my mind.

Related Issues

Link related issues or tickets separated by commas.

  • Closes #
  • Fixes #
  • Related to #

Type of Change

  • Bug fix
  • New feature
  • Refactor
  • Performance improvement
  • UI/UX update
  • Documentation update
  • Build/CI change
  • Other (describe):

Changes Made

List the key changes included in this PR.

  • Updated _appendDisabledBuiltinSections in plugin_sync_service.dart so built-in sections omitted from server profile layouts append as enabled: false and explicitly update their corresponding toggle preferences to false.
  • Added missing sinceYouWatched1Enabled .. sinceYouWatched5Enabled mappings to _rowEnabledPreference in plugin_sync_service.dart.
  • Added _syncSeerrHomeRowsWithSections in plugin_sync_service.dart to synchronize SeerrPreferences.homeRowsConfig in lockstep with homeSectionsConfig whenever server profile sections are applied or reset.
  • Updated _homeRowsConfigFromSections() and isSeerrHomeRowEnabled() in seerr_preferences.dart to default unconfigured or omitted Seerr row sections to enabled: false instead of falling back to enabled: true.

Platform

  • Android
  • iOS
  • tvOS
  • Web
  • macOS
  • Windows
  • Linux
  • All / Shared code

Testing

Describe how this change was tested.

  • Tested on emulator / simulator
  • Tested on physical device
  • Manual testing completed
  • Not tested (explain why):

Test Steps

  1. Disable Rewatch / Since You Watched rows in home section toggles.
  2. Trigger server profile synchronization.
  3. Verify rows remain disabled across sync cycles and application restarts.

Screenshots (if applicable)

Include screenshots or recordings for UI changes.

Checklist

  • Code builds successfully
  • Code follows project style and conventions
  • No unnecessary commented-out code
  • No new warnings introduced

…sync

Fix feedback loop where omitted server built-in sections were re-created
as enabled: true by _appendDisabledBuiltinSections due to reading default
true boolean preferences.

- Append missing built-in home sections as enabled: false in
  _appendDisabledBuiltinSections and explicitly update their toggle preferences.
- Add missing sinceYouWatched1..5 mappings to _rowEnabledPreference.
@mattsigal
mattsigal force-pushed the bugfix/home-row-toggles-sync-pairing branch from d8b2792 to 360c9eb Compare July 26, 2026 14:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant