From c1bb636db4c6797109a9614a1cdc7139316dfb16 Mon Sep 17 00:00:00 2001 From: Alejandro Martinez Date: Wed, 14 May 2025 16:33:59 -0300 Subject: [PATCH] DiaryWindow::rideSelected - Ignore same activity This method is called every time the chart is activated and this change is intended to preserve the chart status since the user could have navigated to a different date. [publish binaries][skip travis] --- src/Charts/DiaryWindow.cpp | 7 ++++--- src/Charts/DiaryWindow.h | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Charts/DiaryWindow.cpp b/src/Charts/DiaryWindow.cpp index 01a36c713..f5489ac4d 100644 --- a/src/Charts/DiaryWindow.cpp +++ b/src/Charts/DiaryWindow.cpp @@ -27,7 +27,7 @@ #include "HelpWhatsThis.h" DiaryWindow::DiaryWindow(Context *context) : - GcChartWindow(context), context(context), active(false) + GcChartWindow(context), ride(nullptr), context(context), active(false) { setControls(NULL); @@ -142,11 +142,12 @@ DiaryWindow::setDefaultView(int view) void DiaryWindow::rideSelected() { - if (active) { + // ignore if already active or the selected activity has not changed + if (active || ride == myRideItem) { return; } - RideItem *ride = myRideItem; + ride = myRideItem; // ignore if not active or null ride if (!ride) { diff --git a/src/Charts/DiaryWindow.h b/src/Charts/DiaryWindow.h index d25972ab0..93271b251 100644 --- a/src/Charts/DiaryWindow.h +++ b/src/Charts/DiaryWindow.h @@ -61,6 +61,7 @@ class DiaryWindow : public GcChartWindow protected: Context *context; + RideItem *ride; QDateEdit *title; QPushButton *prev, *next;