diff options
| author | Eugene Popov <[email protected]> | 2024-03-27 10:28:15 +0000 |
|---|---|---|
| committer | Méven Car <[email protected]> | 2024-03-27 10:28:15 +0000 |
| commit | 240d33ce17fc531e8bc6638af8f71454fe7c05e6 (patch) | |
| tree | 11eea661f23034830e9358df1ced907b95b9f0a7 /src/kitemviews/kitemlistcontainer.cpp | |
| parent | 7a7cab61b6fd8d058ca47887f90fa5cd12a3ccca (diff) | |
Better support for RTL
This MR fixes some issues related to RTL scripts:
- wrong layout in Compact View mode
- broken horizontal scrolling in Icon View and Details View modes
- broken navigation with left and right arrow keys in Details View mode
BUG: 484012
BUG: 449493
Diffstat (limited to 'src/kitemviews/kitemlistcontainer.cpp')
| -rw-r--r-- | src/kitemviews/kitemlistcontainer.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp index 1cac8f7a6..2f9f5d401 100644 --- a/src/kitemviews/kitemlistcontainer.cpp +++ b/src/kitemviews/kitemlistcontainer.cpp @@ -399,6 +399,11 @@ void KItemListContainer::updateSmoothScrollers(Qt::Orientation orientation) m_horizontalSmoothScroller->setPropertyName("scrollOffset"); m_verticalSmoothScroller->setPropertyName("itemOffset"); } + + const bool isRightToLeft = m_controller->view()->layoutDirection() == Qt::RightToLeft; + QScrollBar *hScrollBar = horizontalScrollBar(); + hScrollBar->setInvertedAppearance(isRightToLeft && orientation == Qt::Vertical); + hScrollBar->setInvertedControls(!isRightToLeft || orientation == Qt::Vertical); } void KItemListContainer::updateScrollOffsetScrollBarPolicy() |
