diff options
| author | Frank Reininghaus <[email protected]> | 2012-01-31 23:12:36 +0100 |
|---|---|---|
| committer | Frank Reininghaus <[email protected]> | 2012-01-31 23:19:09 +0100 |
| commit | 530b91b9c738baece708e7fef730444d50ec9db0 (patch) | |
| tree | 570fbc405eb9bb4a98c6caef103a30be7836a5dc | |
| parent | 3872938944b48024f3a109b96f4cafa8f1184e4b (diff) | |
Fix keyboard navigation issue when Home or End are pressed
The problem was that m_keyboardAnchorIndex and m_keyboardAnchorPos were
not updated when Home or End are pressed. This causes the following
unexpected behavior in Icons View: Press Home, then Right, then Down,
then Home, finally Down. One would expect that the first item in the
second row is the current item then, but before this commit, it was the
second one because the controller still remembered that the second
column was active before Home was pressed.
(cherry picked from commit 999234a94ae41cfb4f2167d2779b562ebf8127ce)
| -rw-r--r-- | src/kitemviews/kitemlistcontroller.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/kitemviews/kitemlistcontroller.cpp b/src/kitemviews/kitemlistcontroller.cpp index bd37aa964..e3210dd22 100644 --- a/src/kitemviews/kitemlistcontroller.cpp +++ b/src/kitemviews/kitemlistcontroller.cpp @@ -216,10 +216,14 @@ bool KItemListController::keyPressEvent(QKeyEvent* event) switch (key) { case Qt::Key_Home: index = 0; + m_keyboardAnchorIndex = index; + m_keyboardAnchorPos = keyboardAnchorPos(index); break; case Qt::Key_End: index = itemCount - 1; + m_keyboardAnchorIndex = index; + m_keyboardAnchorPos = keyboardAnchorPos(index); break; case Qt::Key_Left: |
