diff --git a/src/toolbars/MixerToolBar.cpp b/src/toolbars/MixerToolBar.cpp index e25d66eb1..10540c7db 100644 --- a/src/toolbars/MixerToolBar.cpp +++ b/src/toolbars/MixerToolBar.cpp @@ -127,6 +127,20 @@ void MixerToolBar::Populate() // Add a little space Add(2, -1); + + wxTheApp->Bind(EVT_AUDIOIO_CAPTURE, + &MixerToolBar::OnAudioCapture, + this); +} + +void MixerToolBar::OnAudioCapture(wxCommandEvent & event) +{ + AudacityProject *p = &mProject; + if (event.GetEventObject() != p) + { + mInputSlider->Enable(!event.GetInt()); + mOutputSlider->Enable(!event.GetInt()); + } } //Also from SelectionBar; @@ -213,7 +227,6 @@ void MixerToolBar::UpdateControls() // Show or hide the input slider based on whether it works auto gAudioIO = AudioIO::Get(); - mInputSlider->Enable(gAudioIO->InputMixerWorks()); gAudioIO->GetMixer(&inputSource, &inputVolume, &playbackVolume); diff --git a/src/toolbars/MixerToolBar.h b/src/toolbars/MixerToolBar.h index 5e663a55e..75844ad1e 100644 --- a/src/toolbars/MixerToolBar.h +++ b/src/toolbars/MixerToolBar.h @@ -46,6 +46,8 @@ class MixerToolBar final : public ToolBar { void OnSlider(wxCommandEvent & event); + void OnAudioCapture(wxCommandEvent & event); + void ShowOutputGainDialog(); void ShowInputGainDialog();