┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistcontroller.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/kitemviews/kitemlistcontroller.cpp')
-rw-r--r--src/kitemviews/kitemlistcontroller.cpp42
1 files changed, 14 insertions, 28 deletions
diff --git a/src/kitemviews/kitemlistcontroller.cpp b/src/kitemviews/kitemlistcontroller.cpp
index 2ae4a1f25..5a396de61 100644
--- a/src/kitemviews/kitemlistcontroller.cpp
+++ b/src/kitemviews/kitemlistcontroller.cpp
@@ -243,6 +243,20 @@ bool KItemListController::keyPressEvent(QKeyEvent *event)
const bool horizontalScrolling = m_view->scrollOrientation() == Qt::Horizontal;
+ if (m_view->layoutDirection() == Qt::RightToLeft) {
+ // swap left and right arrow keys
+ switch (key) {
+ case Qt::Key_Left:
+ key = Qt::Key_Right;
+ break;
+ case Qt::Key_Right:
+ key = Qt::Key_Left;
+ break;
+ default:
+ break;
+ }
+ }
+
// Handle the expanding/collapsing of items
// expand / collapse all selected directories
if (m_view->supportsItemExpanding() && m_model->isExpandable(index) && (key == Qt::Key_Right || key == Qt::Key_Left)) {
@@ -299,34 +313,6 @@ bool KItemListController::keyPressEvent(QKeyEvent *event)
}
}
- if (m_view->layoutDirection() == Qt::RightToLeft) {
- if (horizontalScrolling) {
- // swap up and down arrow keys
- switch (key) {
- case Qt::Key_Up:
- key = Qt::Key_Down;
- break;
- case Qt::Key_Down:
- key = Qt::Key_Up;
- break;
- default:
- break;
- }
- } else if (!m_view->supportsItemExpanding()) {
- // swap left and right arrow keys
- switch (key) {
- case Qt::Key_Left:
- key = Qt::Key_Right;
- break;
- case Qt::Key_Right:
- key = Qt::Key_Left;
- break;
- default:
- break;
- }
- }
- }
-
const bool selectSingleItem = m_selectionBehavior != NoSelection && itemCount == 1 && navigationPressed;
if (selectSingleItem) {