diff options
author | ronso0 <ronso0@mixxx.org> | 2019-11-27 20:29:35 +0100 |
---|---|---|
committer | ronso0 <ronso0@mixxx.org> | 2019-11-27 20:29:35 +0100 |
commit | c556808e8ba2816a533e35c63c55eb10e6635f32 (patch) | |
tree | 67d04d1dfc98407d75978c7b709024b85f5a8d6d /src | |
parent | 02c67f6df009052e12ddfa9293eac56305defffa (diff) |
WPushButton POWERWINDOW: longpress temp toggle also for OFF state
Diffstat (limited to 'src')
-rw-r--r-- | src/widget/wpushbutton.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/widget/wpushbutton.cpp b/src/widget/wpushbutton.cpp index f3dc58a25e..ddf1c7a5e9 100644 --- a/src/widget/wpushbutton.cpp +++ b/src/widget/wpushbutton.cpp @@ -348,12 +348,12 @@ void WPushButton::mousePressEvent(QMouseEvent * e) { if (m_leftButtonMode == ControlPushButton::POWERWINDOW && m_iNoStates == 2) { if (leftClick) { - if (getControlParameterLeft() == 0.0) { - m_clickTimer.setSingleShot(true); - m_clickTimer.start(ControlPushButtonBehavior::kPowerWindowTimeMillis); - } + m_clickTimer.setSingleShot(true); + m_clickTimer.start(ControlPushButtonBehavior::kPowerWindowTimeMillis); + + double value = getControlParameterLeft() == 0.0 ? 1.0 : 0.0; + setControlParameterLeftDown(value); m_bPressed = true; - setControlParameterLeftDown(1.0); restyleAndRepaint(); } // discharge right clicks here, because is used for latching in POWERWINDOW mode @@ -418,7 +418,8 @@ void WPushButton::mouseReleaseEvent(QMouseEvent * e) { const bool rightButtonDown = QApplication::mouseButtons() & Qt::RightButton; if (m_bPressed && !m_clickTimer.isActive() && !rightButtonDown) { // Release button after timer, but not if right button is clicked - setControlParameterLeftUp(0.0); + double value = getControlParameterLeft() == 0.0 ? 1.0 : 0.0; + setControlParameterLeftUp(value); } m_bPressed = false; } else if (rightClick) { @@ -430,7 +431,7 @@ void WPushButton::mouseReleaseEvent(QMouseEvent * e) { if (rightClick) { // This is the secondary clickButton function, - // due the leak of visual feedback we do not allow a toggle + // due the lack of visual feedback we do not allow a toggle // function m_bPressed = false; if (m_rightButtonMode == ControlPushButton::PUSH |