From e278d721920c6bf2b05b0fa36e2097f691451a4a Mon Sep 17 00:00:00 2001 From: Volker Hilsheimer Date: Thu, 2 Jul 2020 10:37:09 +0200 Subject: Add keyboardModifiers member to QStyleOptionSlider, and use it for mac MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gets rid of a call to QApplication::keyboardModifiers in a method that is anyway only called from an input event handler, where we have that information already. Task-number: QTBUG-73829 Change-Id: I81753d6bf725e9db4918d831fac5b03a0b1940b9 Reviewed-by: Tor Arne Vestbø --- src/widgets/styles/qstyleoption.cpp | 4 ++-- src/widgets/styles/qstyleoption.h | 1 + src/widgets/widgets/qscrollbar.cpp | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) (limited to 'src/widgets') diff --git a/src/widgets/styles/qstyleoption.cpp b/src/widgets/styles/qstyleoption.cpp index c2ab864c22..4624c6e7f0 100644 --- a/src/widgets/styles/qstyleoption.cpp +++ b/src/widgets/styles/qstyleoption.cpp @@ -1966,7 +1966,7 @@ QStyleOptionSlider::QStyleOptionSlider() : QStyleOptionComplex(Version, SO_Slider), orientation(Qt::Horizontal), minimum(0), maximum(0), tickPosition(QSlider::NoTicks), tickInterval(0), upsideDown(false), sliderPosition(0), sliderValue(0), singleStep(0), pageStep(0), notchTarget(0.0), - dialWrapping(false) + dialWrapping(false), keyboardModifiers{} { } @@ -1977,7 +1977,7 @@ QStyleOptionSlider::QStyleOptionSlider(int version) : QStyleOptionComplex(version, SO_Slider), orientation(Qt::Horizontal), minimum(0), maximum(0), tickPosition(QSlider::NoTicks), tickInterval(0), upsideDown(false), sliderPosition(0), sliderValue(0), singleStep(0), pageStep(0), notchTarget(0.0), - dialWrapping(false) + dialWrapping(false), keyboardModifiers{} { } diff --git a/src/widgets/styles/qstyleoption.h b/src/widgets/styles/qstyleoption.h index b81e48c669..38f2c98e38 100644 --- a/src/widgets/styles/qstyleoption.h +++ b/src/widgets/styles/qstyleoption.h @@ -527,6 +527,7 @@ public: int pageStep; qreal notchTarget; bool dialWrapping; + Qt::KeyboardModifiers keyboardModifiers; QStyleOptionSlider(); QStyleOptionSlider(const QStyleOptionSlider &other) : QStyleOptionComplex(Version, Type) { *this = other; } diff --git a/src/widgets/widgets/qscrollbar.cpp b/src/widgets/widgets/qscrollbar.cpp index 59575b9f2b..cf2a3c5bfe 100644 --- a/src/widgets/widgets/qscrollbar.cpp +++ b/src/widgets/widgets/qscrollbar.cpp @@ -553,6 +553,7 @@ void QScrollBar::mousePressEvent(QMouseEvent *e) nullptr, this); QStyleOptionSlider opt; initStyleOption(&opt); + opt.keyboardModifiers = e->modifiers(); if (d->maximum == d->minimum // no range || (e->buttons() & (~e->button())) // another button was clicked before -- cgit v1.2.3