diff --git a/app.go b/app.go index 8d5b632..1a9aa9b 100644 --- a/app.go +++ b/app.go @@ -10681,6 +10681,11 @@ func (a *App) AudioStartMonitor() error { return fmt.Errorf("audio not initialized") } cfg, _ := a.GetAudioSettings() + // Idempotent: asking to listen while a monitor is already running restarts + // it instead of refusing. The refusal surfaced as a checkbox that unticked + // itself the instant it was ticked, whenever the UI's idea of the state and + // the real monitor had drifted apart. + a.audioMgr.StopMonitor() // When the rig's audio arrives over the NETWORK (Icom 50003), the monitor // must be render-only: this button used to start a USB capture from the // "From radio" device as well, and that second producer — often another