diff --git a/core/src/gui/main_window.cpp b/core/src/gui/main_window.cpp index 8ed95324..de690fc5 100644 --- a/core/src/gui/main_window.cpp +++ b/core/src/gui/main_window.cpp @@ -576,20 +576,20 @@ void MainWindow::draw() { // Handle scrollwheel int wheel = ImGui::GetIO().MouseWheel; if (wheel != 0 && (gui::waterfall.mouseInFFT || gui::waterfall.mouseInWaterfall)) { - // Select factor depending on modifier keys - double interval; - if (ImGui::IsKeyDown(ImGuiKey_LeftShift)) { - interval = vfo->snapInterval * 10.0; - } - else if (ImGui::IsKeyDown(ImGuiKey_LeftAlt)) { - interval = vfo->snapInterval * 0.1; - } - else { - interval = vfo->snapInterval; - } - double nfreq; if (vfo != NULL) { + // Select factor depending on modifier keys + double interval; + if (ImGui::IsKeyDown(ImGuiKey_LeftShift)) { + interval = vfo->snapInterval * 10.0; + } + else if (ImGui::IsKeyDown(ImGuiKey_LeftAlt)) { + interval = vfo->snapInterval * 0.1; + } + else { + interval = vfo->snapInterval; + } + nfreq = gui::waterfall.getCenterFrequency() + vfo->generalOffset + (interval * wheel); nfreq = roundl(nfreq / interval) * interval; }