diff --git a/app/widget/slider/sliderbase.cpp b/app/widget/slider/sliderbase.cpp index 9a174a565..25d36f10b 100644 --- a/app/widget/slider/sliderbase.cpp +++ b/app/widget/slider/sliderbase.cpp @@ -396,6 +396,8 @@ void SliderBase::RepositionLadder() drag_ladder_->move(ladder_x, ladder_y); } + + drag_ladder_->StartListeningToMouseInput(); } } diff --git a/app/widget/slider/sliderladder.cpp b/app/widget/slider/sliderladder.cpp index 47542765e..af630dedf 100644 --- a/app/widget/slider/sliderladder.cpp +++ b/app/widget/slider/sliderladder.cpp @@ -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() diff --git a/app/widget/slider/sliderladder.h b/app/widget/slider/sliderladder.h index a881cd75a..ca67c303d 100644 --- a/app/widget/slider/sliderladder.h +++ b/app/widget/slider/sliderladder.h @@ -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: