From 41778433b1e5ee2c52659b4e62333408a843743c Mon Sep 17 00:00:00 2001 From: Gabriel Ozouf Date: Mon, 16 Nov 2020 14:50:00 +0100 Subject: [PATCH] [graph] Fix a bug when zooming When entering the Navigate menu, a portion of the Y axis is memoized to preserve the grid units. However, this portion was not modified when zooming, causing some glitches. Change-Id: I06b4ee044eaa75d48b8f338c9ef6ea33bb299e39 --- apps/shared/interactive_curve_view_range.cpp | 1 + apps/shared/interactive_curve_view_range.h | 1 + 2 files changed, 2 insertions(+) diff --git a/apps/shared/interactive_curve_view_range.cpp b/apps/shared/interactive_curve_view_range.cpp index a43cbfe4d..f8f82d125 100644 --- a/apps/shared/interactive_curve_view_range.cpp +++ b/apps/shared/interactive_curve_view_range.cpp @@ -115,6 +115,7 @@ void InteractiveCurveViewRange::zoom(float ratio, float x, float y) { m_yRange.setMax(newYMax, k_lowerMaxFloat, k_upperMaxFloat); MemoizedCurveViewRange::protectedSetYMin(newYMin, k_lowerMaxFloat, k_upperMaxFloat); } + m_offscreenYAxis *= ratio; } void InteractiveCurveViewRange::panWithVector(float x, float y) { diff --git a/apps/shared/interactive_curve_view_range.h b/apps/shared/interactive_curve_view_range.h index ced28f46d..eec430989 100644 --- a/apps/shared/interactive_curve_view_range.h +++ b/apps/shared/interactive_curve_view_range.h @@ -14,6 +14,7 @@ public: InteractiveCurveViewRange(InteractiveCurveViewRangeDelegate * delegate = nullptr) : MemoizedCurveViewRange(), m_delegate(nullptr), + m_offscreenYAxis(0.f), m_zoomAuto(true), m_zoomNormalize(false) {