diff options
author | Lambert Duijst <lambertduijst@hotmail.com> | 2016-12-08 11:07:07 +0100 |
---|---|---|
committer | Lambert Duijst <lambertduijst@hotmail.com> | 2017-03-08 13:23:53 +0000 |
commit | faf277b5dec96e4b785bf2a1cfd2c1eb6075b1f4 (patch) | |
tree | dac2ac0f78faa6cc0aaa72a66ecc6dc3844ea3bd | |
parent | b4fc5b71e907163e075ff39cab5297c9b9bafd0d (diff) |
Fix for horizontal scrollbars
Horizontal scrollbars scroll in the wrong direction when the app
has a stylesheet and the LayoutDirection is RightToLeft.
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit 00c9ec63a552d040e851b561c11428fabf1a2b08)
Change-Id: I00d21ec9e1b4b4e86ee8f5ad84ac093f642edd03
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
-rw-r--r-- | src/widgets/styles/qstylesheetstyle.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/widgets/styles/qstylesheetstyle.cpp b/src/widgets/styles/qstylesheetstyle.cpp index eae4658bc9..af8144303f 100644 --- a/src/widgets/styles/qstylesheetstyle.cpp +++ b/src/widgets/styles/qstylesheetstyle.cpp @@ -5477,9 +5477,9 @@ QRect QStyleSheetStyle::subControlRect(ComplexControl cc, const QStyleOptionComp } else { sliderlen = maxlen; } - + const int sliderPosition = sb->orientation == Qt::Horizontal && sb->direction == Qt::RightToLeft ? sb->maximum - sb->sliderPosition + sb->minimum : sb->sliderPosition; int sliderstart = (styleOptionSlider.orientation == Qt::Horizontal ? contentRect.left() : contentRect.top()) - + sliderPositionFromValue(sb->minimum, sb->maximum, sb->sliderPosition, + + sliderPositionFromValue(sb->minimum, sb->maximum, sliderPosition, maxlen - sliderlen, sb->upsideDown); QRect sr = (sb->orientation == Qt::Horizontal) |