diff --git a/Software/PC_Application/LibreVNA-GUI/SpectrumAnalyzer/spectrumanalyzer.cpp b/Software/PC_Application/LibreVNA-GUI/SpectrumAnalyzer/spectrumanalyzer.cpp index 0470375..7b6719c 100644 --- a/Software/PC_Application/LibreVNA-GUI/SpectrumAnalyzer/spectrumanalyzer.cpp +++ b/Software/PC_Application/LibreVNA-GUI/SpectrumAnalyzer/spectrumanalyzer.cpp @@ -924,7 +924,7 @@ void SpectrumAnalyzer::ConfigureDevice() traceModel.clearLiveData(); traceModel.setSpan(settings.freqStart, settings.freqStop); } else { - if(window->getDevice()) { + if(window->getDevice() && isActive) { changingSettings = true; // single sweep finished window->getDevice()->setIdle([=](bool){ diff --git a/Software/PC_Application/LibreVNA-GUI/VNA/vna.cpp b/Software/PC_Application/LibreVNA-GUI/VNA/vna.cpp index ad5ae06..c8749cf 100644 --- a/Software/PC_Application/LibreVNA-GUI/VNA/vna.cpp +++ b/Software/PC_Application/LibreVNA-GUI/VNA/vna.cpp @@ -2039,7 +2039,7 @@ void VNA::ConfigureDevice(bool resetTraces, std::function cb) changingSettings = false; } } else { - if(window->getDevice()) { + if(window->getDevice() && isActive) { changingSettings = true; window->getDevice()->setIdle([=](bool){ changingSettings = false; diff --git a/Software/PC_Application/LibreVNA-GUI/mode.cpp b/Software/PC_Application/LibreVNA-GUI/mode.cpp index 515a86c..2cada73 100644 --- a/Software/PC_Application/LibreVNA-GUI/mode.cpp +++ b/Software/PC_Application/LibreVNA-GUI/mode.cpp @@ -89,7 +89,6 @@ void Mode::activate() void Mode::deactivate() { - isActive = false; QSettings settings; // save dock/toolbar visibility for(auto d : docks) { @@ -118,6 +117,7 @@ void Mode::deactivate() if(window->getDevice()) { window->getDevice()->setIdle(); } + isActive = false; } QString Mode::TypeToName(Mode::Type t)