Skip to content

feat(ui): Per-account settings — sync path, worker count, sync interval (#28d) #57

Description

@jaybarden1

Parent

Sub-issue of #28.

Summary

Add per-account settings panel shown when an account is selected in the settings overlay. Covers local sync path, worker count, and sync interval.

Scope (~4 production files)

  • AccountSettingsViewModelReactiveObject; LocalSyncPath (editable, defaults per onedrive-onboarding.md), WorkerCount (1–10, default 8), SyncInterval (15 min / 30 min / 60 min / 2 h / 4 h / manual); save command persists via IAccountRepository; folder-picker command opens native OS dialog
  • AccountSettingsView.axaml + .axaml.cs — path text field + folder-picker button, worker count numeric stepper, sync interval dropdown
  • SettingsViewModel — extend to expose selected account and AccountSettingsViewModel instance; bind to WorkspaceViewModel.SelectedAccount
  • ISyncSchedulerSetInterval call when sync interval changes

Acceptance criteria

  • Local sync path is editable; folder-picker opens OS dialog and populates the field
  • Worker count stepper clamps to 1–10
  • Sync interval dropdown lists all five options; selection updates the scheduler immediately
  • All changes persist across restarts
  • dotnet build zero warnings; dotnet test all pass

Depends on

  • #28a (settings shell)
  • Persistence issue (account entity must be persistable)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions