Bug 430101 - Slider fill reversed on RTL
Summary: Slider fill reversed on RTL
Status: RESOLVED FIXED
Alias: None
Product: frameworks-qqc2-desktop-style
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 5.85.0
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Marco Martin
URL:
Keywords: rtl
: 368605 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-12-07 08:04 UTC by ttv200
Modified: 2022-06-13 16:25 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.25.1
Sentry Crash Report:


Attachments
the bug (36.86 KB, image/png)
2020-12-07 08:05 UTC, ttv200
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ttv200 2020-12-07 08:04:25 UTC
you can see it easly with:
kcmshell5 kcm_pulseaudio --reverse
or in the Display and Monitor - global scale page
the range lise is filled from the wrong side
see the attachment - the range is near to 0% but it filled (it should be filled from right to left)

Linux/KDE Plasma: Ubuntu 20.04
KDE Plasma Version: 5.18.5
KDE Frameworks Version: 5.68.0
Qt Version: 5.12.8
Comment 1 ttv200 2020-12-07 08:05:04 UTC
Created attachment 133911 [details]
the bug
Comment 2 ttv200 2020-12-07 08:05:51 UTC
*** Bug 368605 has been marked as a duplicate of this bug. ***
Comment 3 Zayed Al-Saidi 2021-07-25 08:25:14 UTC
This bug is annoying for RTL users. However, it is a common for all application that use Kirigami Controls.Slider.
Comment 4 Nate Graham 2021-08-18 20:30:11 UTC
This issue appears to have been fixed in the PlasmaComponents3 slider at some point along the way; moving to qqc2-desktop-style where I can still reproduce the issue.
Comment 5 Bug Janitor Service 2022-03-03 15:43:05 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/133
Comment 6 Bug Janitor Service 2022-03-14 23:19:07 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/134
Comment 7 Bug Janitor Service 2022-06-03 21:34:14 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/breeze/-/merge_requests/223
Comment 8 Bug Janitor Service 2022-06-03 23:53:46 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/breeze/-/merge_requests/224
Comment 9 Janet Blackquill 2022-06-04 00:01:08 UTC
Git commit e8b1d4aa47daf99041332f43c29fabdf70f25004 by Jan Blackquill.
Committed on 04/06/2022 at 00:00.
Pushed by cblack into branch 'master'.

kstyle: fix qqc2 desktop style sliders in RtL

We don't do any mirroring of the slider groove rects or tickmarks based on layout direction,
and this causes qqc2-desktop-style sliders to render in the wrong direction.
Swapping the leftRect and the rightRect when option->direction == Qt::RightToLeft
fixes this.

This wasn't broken with QWidgets because QSlider relies on (ab)using the upsideDown option
in order to achieve mirroring of the groove instead of option->direction, and consequently,
this change doesn't affect Qt widgets apps at all.

M  +9    -4    kstyle/breezestyle.cpp

https://invent.kde.org/plasma/breeze/commit/e8b1d4aa47daf99041332f43c29fabdf70f25004
Comment 10 Janet Blackquill 2022-06-04 00:01:40 UTC
Git commit c7bfd1c728c603464cab9a43a0627a82d1ab0933 by Jan Blackquill.
Committed on 04/06/2022 at 00:01.
Pushed by cblack into branch 'Plasma/5.25'.

kstyle: fix qqc2 desktop style sliders in RtL

We don't do any mirroring of the slider groove rects or tickmarks based on layout direction,
and this causes qqc2-desktop-style sliders to render in the wrong direction.
Swapping the leftRect and the rightRect when option->direction == Qt::RightToLeft
fixes this.

This wasn't broken with QWidgets because QSlider relies on (ab)using the upsideDown option
in order to achieve mirroring of the groove instead of option->direction, and consequently,
this change doesn't affect Qt widgets apps at all.
(cherry picked from commit e8b1d4aa47daf99041332f43c29fabdf70f25004)

M  +9    -4    kstyle/breezestyle.cpp

https://invent.kde.org/plasma/breeze/commit/c7bfd1c728c603464cab9a43a0627a82d1ab0933
Comment 11 Nate Graham 2022-06-13 14:04:44 UTC
Git commit 2bf9fc4c7be280e2b77f7c150855e0fca0b80d9a by Nate Graham, on behalf of ivan tkachenko.
Committed on 13/06/2022 at 13:59.
Pushed by ngraham into branch 'master'.

KStyle: Fix QQC2 ProgressBar desktop style in RTL layout direction

M  +10   -6    kstyle/breezestyle.cpp

https://invent.kde.org/plasma/breeze/commit/2bf9fc4c7be280e2b77f7c150855e0fca0b80d9a
Comment 12 Nate Graham 2022-06-13 14:07:04 UTC
Git commit b51316269ff02c84648667df97563bacd2538b6c by Nate Graham, on behalf of ivan tkachenko.
Committed on 13/06/2022 at 14:07.
Pushed by ngraham into branch 'Plasma/5.25'.

KStyle: Fix QQC2 ProgressBar desktop style in RTL layout direction


(cherry picked from commit 2bf9fc4c7be280e2b77f7c150855e0fca0b80d9a)

M  +10   -6    kstyle/breezestyle.cpp

https://invent.kde.org/plasma/breeze/commit/b51316269ff02c84648667df97563bacd2538b6c