diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-03-18 21:11:25 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-03-18 21:11:25 (GMT) |
commit | 390554b120d8bdcffaa090e0a998a4fddfd4e282 (patch) | |
tree | 33d2b802fda51ec1d1369966e57361ba1dcd3dd5 /src/gui/itemviews/qtreeview.cpp | |
parent | abf09f87af8f57f670904ff25a626d19ec11120b (diff) | |
parent | b6dcc8faf73d63a281f5cd9c0ef80ef5db367532 (diff) | |
download | Qt-390554b120d8bdcffaa090e0a998a4fddfd4e282.zip Qt-390554b120d8bdcffaa090e0a998a4fddfd4e282.tar.gz Qt-390554b120d8bdcffaa090e0a998a4fddfd4e282.tar.bz2 |
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (58 commits)
Dont force height for filter widget
- Fix importdir option on unix/linux configure
Remove incorrect semi-colons after Q_PROPERTY
10n: Update German translation for 4.7.0
Redesigned filter widgets
Add a test case for commit 76d767080a6be7b025f36d6778dfaedbd31a9f07
Add Japanese/Korean keyboard specific keys to QKeySequence
Fixed qmdiarea autotest regression on Cocoa
Fix JSC export macros
Minor update for f3f979cbd37f47892cd0c0a9fc23b802ed6f7890
Incorrect translation for Application menu items in Mac.
doc: Fixed use of Qt 3 support function in QIcon doc snippet
Build and run QElapsedTimer test.
Fix license headers.
Add flag to indicate that network sessions are expected on a platform.
Don't fail unit test when there is no default network configuration.
Make destructor virtual.
Optimized QLocale to access system locale on demand.
Remove unwanted code in f8d5f2594a9b268b9eeecf95b24b23fc940c71ce
Compile fix on keypad-navigation systems
...
Diffstat (limited to 'src/gui/itemviews/qtreeview.cpp')
-rw-r--r-- | src/gui/itemviews/qtreeview.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/gui/itemviews/qtreeview.cpp b/src/gui/itemviews/qtreeview.cpp index 101dafe..2764baa 100644 --- a/src/gui/itemviews/qtreeview.cpp +++ b/src/gui/itemviews/qtreeview.cpp @@ -958,7 +958,8 @@ void QTreeView::keyboardSearch(const QString &search) else start = d->model->index(0, 0, d->root); - QTime now(QTime::currentTime()); + QElapsedTimer now; + now.start(); bool skipRow = false; if (search.isEmpty() || (d->keyboardInputTime.msecsTo(now) > QApplication::keyboardInputInterval())) { @@ -2156,9 +2157,10 @@ QModelIndex QTreeView::moveCursor(CursorAction cursorAction, Qt::KeyboardModifie return d->modelIndex(d->above(vi), current.column()); case MoveLeft: { QScrollBar *sb = horizontalScrollBar(); - if (vi < d->viewItems.count() && d->viewItems.at(vi).expanded && d->itemsExpandable && sb->value() == sb->minimum()) + if (vi < d->viewItems.count() && d->viewItems.at(vi).expanded && d->itemsExpandable && sb->value() == sb->minimum()) { d->collapse(vi, true); - else { + d->moveCursorUpdatedView = true; + } else { bool descend = style()->styleHint(QStyle::SH_ItemView_ArrowKeysNavigateIntoChildren, 0, this); if (descend) { QModelIndex par = current.parent(); @@ -2178,7 +2180,10 @@ QModelIndex QTreeView::moveCursor(CursorAction cursorAction, Qt::KeyboardModifie return next; } + int oldValue = sb->value(); sb->setValue(sb->value() - sb->singleStep()); + if (oldValue != sb->value()) + d->moveCursorUpdatedView = true; } } @@ -2190,6 +2195,7 @@ QModelIndex QTreeView::moveCursor(CursorAction cursorAction, Qt::KeyboardModifie if (vi < d->viewItems.count() && !d->viewItems.at(vi).expanded && d->itemsExpandable && d->hasVisibleChildren(d->viewItems.at(vi).index)) { d->expand(vi, true); + d->moveCursorUpdatedView = true; } else { bool descend = style()->styleHint(QStyle::SH_ItemView_ArrowKeysNavigateIntoChildren, 0, this); if (descend) { @@ -2212,7 +2218,10 @@ QModelIndex QTreeView::moveCursor(CursorAction cursorAction, Qt::KeyboardModifie //last restort: we change the scrollbar value QScrollBar *sb = horizontalScrollBar(); + int oldValue = sb->value(); sb->setValue(sb->value() + sb->singleStep()); + if (oldValue != sb->value()) + d->moveCursorUpdatedView = true; } } updateGeometries(); |