summaryrefslogtreecommitdiffstats
path: root/src/widget/wpushbutton.cpp
diff options
context:
space:
mode:
authorronso0 <ronso0@mixxx.org>2020-01-21 11:27:25 +0100
committerronso0 <ronso0@mixxx.org>2020-01-21 11:27:25 +0100
commitbc9f1f0053c67cfb79cef3809c63f8c984540e65 (patch)
tree5759f8e8860868a890567523e5d784ff1ef3b06a /src/widget/wpushbutton.cpp
parent8e026d3ae5222055c3c4e69ec45004ffbef69372 (diff)
update 'pressed' property before setting the connected control
Diffstat (limited to 'src/widget/wpushbutton.cpp')
-rw-r--r--src/widget/wpushbutton.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/widget/wpushbutton.cpp b/src/widget/wpushbutton.cpp
index 6bbc8cba09..063d7c7dfd 100644
--- a/src/widget/wpushbutton.cpp
+++ b/src/widget/wpushbutton.cpp
@@ -350,10 +350,10 @@ void WPushButton::mousePressEvent(QMouseEvent * e) {
if (leftClick) {
m_clickTimer.setSingleShot(true);
m_clickTimer.start(ControlPushButtonBehavior::kPowerWindowTimeMillis);
+ m_bPressed = true;
double emitValue = getControlParameterLeft() == 0.0 ? 1.0 : 0.0;
setControlParameterLeftDown(emitValue);
- m_bPressed = true;
restyleAndRepaint();
}
// discharge right clicks here, because is used for latching in POWERWINDOW mode
@@ -374,6 +374,7 @@ void WPushButton::mousePressEvent(QMouseEvent * e) {
}
if (leftClick) {
+ m_bPressed = true;
double emitValue;
if (m_leftButtonMode == ControlPushButton::PUSH
|| m_iNoStates == 1) {
@@ -391,7 +392,6 @@ void WPushButton::mousePressEvent(QMouseEvent * e) {
m_clickTimer.start(ControlPushButtonBehavior::kLongPressLatchingTimeMillis);
}
}
- m_bPressed = true;
setControlParameterLeftDown(emitValue);
restyleAndRepaint();
}
@@ -415,13 +415,13 @@ void WPushButton::mouseReleaseEvent(QMouseEvent * e) {
if (m_leftButtonMode == ControlPushButton::POWERWINDOW
&& m_iNoStates == 2) {
if (leftClick) {
+ m_bPressed = false;
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
double emitValue = getControlParameterLeft() == 0.0 ? 1.0 : 0.0;
setControlParameterLeftUp(emitValue);
}
- m_bPressed = false;
} else if (rightClick) {
m_bPressed = false;
}
@@ -443,6 +443,7 @@ void WPushButton::mouseReleaseEvent(QMouseEvent * e) {
}
if (leftClick) {
+ m_bPressed = false;
double emitValue = getControlParameterLeft();
if (m_leftButtonMode == ControlPushButton::PUSH
|| m_iNoStates == 1) {
@@ -459,7 +460,6 @@ void WPushButton::mouseReleaseEvent(QMouseEvent * e) {
// Nothing special happens when releasing a normal toggle button
}
}
- m_bPressed = false;
setControlParameterLeftUp(emitValue);
restyleAndRepaint();
}