From a4ba2ee019764d416dc1e4fd0ae5cd4ffabff604 Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Thu, 25 Mar 2021 22:47:50 +1100 Subject: [PATCH] slider: fixed crash --- app/widget/slider/sliderbase.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/app/widget/slider/sliderbase.cpp b/app/widget/slider/sliderbase.cpp index f46d1b149..ccf1b09b4 100644 --- a/app/widget/slider/sliderbase.cpp +++ b/app/widget/slider/sliderbase.cpp @@ -389,16 +389,18 @@ void SliderBase::ResetValue() void SliderBase::RepositionLadder() { - if (Config::Current()[QStringLiteral("UseSliderLadders")].toBool()) { - drag_ladder_->move(QCursor::pos() - QPoint(drag_ladder_->width()/2, drag_ladder_->height()/2)); - } else { - QPoint label_global_pos = label_->mapToGlobal(label_->pos()); - int text_width = QtUtils::QFontMetricsWidth(label_->fontMetrics(), label_->text()); + if (drag_ladder_) { + if (Config::Current()[QStringLiteral("UseSliderLadders")].toBool()) { + drag_ladder_->move(QCursor::pos() - QPoint(drag_ladder_->width()/2, drag_ladder_->height()/2)); + } else { + QPoint label_global_pos = label_->mapToGlobal(label_->pos()); + int text_width = QtUtils::QFontMetricsWidth(label_->fontMetrics(), label_->text()); - int ladder_x = label_global_pos.x() + text_width / 2 - drag_ladder_->width() / 2; - int ladder_y = label_global_pos.y() + label_->height() / 2 - drag_ladder_->height() / 2; + int ladder_x = label_global_pos.x() + text_width / 2 - drag_ladder_->width() / 2; + int ladder_y = label_global_pos.y() + label_->height() / 2 - drag_ladder_->height() / 2; - drag_ladder_->move(ladder_x, ladder_y); + drag_ladder_->move(ladder_x, ladder_y); + } } }