From f8d9c4217c8c2a3d674d54205826410078f7fb7f Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Tue, 11 Jul 2017 12:41:48 -0400 Subject: [PATCH] Fix click without drag and double-click on Pan, Gain, Velocity sliders --- src/tracks/ui/SliderHandle.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/tracks/ui/SliderHandle.cpp b/src/tracks/ui/SliderHandle.cpp index 6bae9d82e..984de4645 100644 --- a/src/tracks/ui/SliderHandle.cpp +++ b/src/tracks/ui/SliderHandle.cpp @@ -39,16 +39,20 @@ UIHandle::Result SliderHandle::Click // Come here for left click or double click mStartingValue = GetValue(); - GetSlider( pProject )->Set(mStartingValue); - GetSlider( pProject )->OnMouseEvent(event); + auto slider = GetSlider( pProject ); + slider->OnMouseEvent(event); + const float newValue = slider->Get(); + + // Make a non-permanent change to the project data: + auto result = SetValue(pProject, newValue); if (event.ButtonDClick()) // Just did a modal dialog in OnMouseEvent // Do not start a drag - return RefreshCell | Cancelled; + return result | RefreshCell | Cancelled; else { mIsClicked = true; - return RefreshCell; + return result | RefreshCell; } }