diff options
author | Pierre Rossi <pierre.rossi@nokia.com> | 2010-02-26 15:57:38 (GMT) |
---|---|---|
committer | Pierre Rossi <pierre.rossi@nokia.com> | 2010-03-04 11:44:57 (GMT) |
commit | cd2afafbc9c29393a80d415145c49eb5f439da55 (patch) | |
tree | 4be298d809e6a15c8bcd4cdf2879a82487f5de3a /src/gui/itemviews/qtreeview.cpp | |
parent | 8bc0456491e5a7e1fc677fce6e76932ab0d923e8 (diff) | |
download | Qt-cd2afafbc9c29393a80d415145c49eb5f439da55.zip Qt-cd2afafbc9c29393a80d415145c49eb5f439da55.tar.gz Qt-cd2afafbc9c29393a80d415145c49eb5f439da55.tar.bz2 |
Delay the resize section for better performance.
This was particularly unusable when combining a QSortFilterProxyModel
with resize mode ResizeToContents.
Task-number: QTBUG-8540
Reviewed-by: Thierry
Diffstat (limited to 'src/gui/itemviews/qtreeview.cpp')
-rw-r--r-- | src/gui/itemviews/qtreeview.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/gui/itemviews/qtreeview.cpp b/src/gui/itemviews/qtreeview.cpp index 37168eb..1145235 100644 --- a/src/gui/itemviews/qtreeview.cpp +++ b/src/gui/itemviews/qtreeview.cpp @@ -2524,8 +2524,7 @@ void QTreeView::rowsInserted(const QModelIndex &parent, int start, int end) d->viewItems[parentItem].hasChildren = true; d->updateChildCount(parentItem, delta); - updateGeometries(); - viewport()->update(); + d->doDelayedItemsLayout(); } else if ((parentItem != -1) && d->viewItems.at(parentItem).expanded) { d->doDelayedItemsLayout(); } else if (parentItem != -1 && (d->model->rowCount(parent) == end - start + 1)) { @@ -3780,8 +3779,7 @@ void QTreeViewPrivate::rowsRemoved(const QModelIndex &parent, } } if (after) { - q->updateGeometries(); - viewport->update(); + doDelayedItemsLayout(); } else { //we have removed items: we should at least update the scroll bar values. // They are used to determine the item geometry. |