Skip to content

Wire MusicPlayerService, removing duplicate inline music state from MainWindow #20

Description

@mock1ngbb

STATE MIGRATION — move _audioFileReader, _musicProcess, _launcherMusicPath fields from MainWindow into MusicPlayerService.

Extract from MainWindow.axaml.cs:

  • LauncherMusicPath property (lines 88-120)
  • _audioFileReader field (line 82)
  • _musicProcess field (line 84)
  • PlayLauncherMusic() method
  • StopLauncherMusic() method
  • Volume setter (lines 113-120)
  • SelectLauncherMusic_Click/ClearLauncherMusic_Click event handlers

New file: Services/MusicPlayerService.cs

  • Must implement INotifyPropertyChanged for LauncherMusicPath
  • Keep #if WINDOWS conditional compilation for NAudio vs afplay

Verification: dotnet build passes, music playback works on macOS.
Doable by: sonnet/cline-agent under 45 min.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions