slider: start listening to mouse input only after positioning
This commit is contained in:
@@ -396,6 +396,8 @@ void SliderBase::RepositionLadder()
|
||||
|
||||
drag_ladder_->move(ladder_x, ladder_y);
|
||||
}
|
||||
|
||||
drag_ladder_->StartListeningToMouseInput();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -113,6 +113,11 @@ void SliderLadder::SetValue(const QString &s)
|
||||
}
|
||||
}
|
||||
|
||||
void SliderLadder::StartListeningToMouseInput()
|
||||
{
|
||||
drag_timer_.start();
|
||||
}
|
||||
|
||||
void SliderLadder::mouseReleaseEvent(QMouseEvent *event)
|
||||
{
|
||||
Q_UNUSED(event)
|
||||
@@ -120,13 +125,6 @@ void SliderLadder::mouseReleaseEvent(QMouseEvent *event)
|
||||
this->close();
|
||||
}
|
||||
|
||||
void SliderLadder::showEvent(QShowEvent *event)
|
||||
{
|
||||
QWidget::showEvent(event);
|
||||
|
||||
drag_timer_.start();
|
||||
}
|
||||
|
||||
void SliderLadder::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
Q_UNUSED(event)
|
||||
@@ -134,6 +132,8 @@ void SliderLadder::closeEvent(QCloseEvent *event)
|
||||
drag_timer_.stop();
|
||||
|
||||
emit Released();
|
||||
|
||||
QFrame::closeEvent(event);
|
||||
}
|
||||
|
||||
void SliderLadder::TimerUpdate()
|
||||
|
||||
@@ -70,11 +70,11 @@ public:
|
||||
|
||||
void SetValue(const QString& s);
|
||||
|
||||
void StartListeningToMouseInput();
|
||||
|
||||
protected:
|
||||
virtual void mouseReleaseEvent(QMouseEvent *event) override;
|
||||
|
||||
virtual void showEvent(QShowEvent *event) override;
|
||||
|
||||
virtual void closeEvent(QCloseEvent* event) override;
|
||||
|
||||
signals:
|
||||
|
||||
Reference in New Issue
Block a user