diff --git a/src/AppFrame.cpp b/src/AppFrame.cpp index d2fa90f..eb116d3 100644 --- a/src/AppFrame.cpp +++ b/src/AppFrame.cpp @@ -2971,19 +2971,21 @@ void AppFrame::toggleAllActiveDemodRecording() { return; } - auto activeDemods = wxGetApp().getDemodMgr().getDemodulators(); + // All demods, irrespective of their active state: + // recording will start eventually when a demod come in range. + auto allDemods = wxGetApp().getDemodMgr().getDemodulators(); //by default, do a false => true for all: bool stateToSet = true; - for (auto i : activeDemods) { + for (auto i : allDemods) { if (i->isRecording()) { stateToSet = false; break; } } - for (auto i : activeDemods) { + for (auto i : allDemods) { i->setRecording(stateToSet); } diff --git a/src/forms/Bookmark/BookmarkView.cpp b/src/forms/Bookmark/BookmarkView.cpp index d13741c..f60ebeb 100644 --- a/src/forms/Bookmark/BookmarkView.cpp +++ b/src/forms/Bookmark/BookmarkView.cpp @@ -845,14 +845,12 @@ void BookmarkView::activeSelection(DemodulatorInstancePtr dsel) { addBookmarkChoice(m_buttonPanel); - if (dsel->isActive()) { - if (!(dsel->isRecording())) { - addButton(m_buttonPanel, "Start Recording", wxCommandEventHandler(BookmarkView::onStartRecording)); - } else { - addButton(m_buttonPanel, "Stop Recording", wxCommandEventHandler(BookmarkView::onStopRecording)); - } - } - + if (!(dsel->isRecording())) { + addButton(m_buttonPanel, "Start Recording", wxCommandEventHandler(BookmarkView::onStartRecording)); + } else { + addButton(m_buttonPanel, "Stop Recording", wxCommandEventHandler(BookmarkView::onStopRecording)); + } + addButton(m_buttonPanel, "Remove Active", wxCommandEventHandler( BookmarkView::onRemoveActive )); showProps();