┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistcontainer.cpp
diff options
context:
space:
mode:
authorEugene Popov <[email protected]>2024-03-27 10:28:15 +0000
committerMéven Car <[email protected]>2024-03-27 10:28:15 +0000
commit240d33ce17fc531e8bc6638af8f71454fe7c05e6 (patch)
tree11eea661f23034830e9358df1ced907b95b9f0a7 /src/kitemviews/kitemlistcontainer.cpp
parent7a7cab61b6fd8d058ca47887f90fa5cd12a3ccca (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.cpp5
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()