summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/widgets/itemviews/qlistview.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp
index 315960648b..82792d5fef 100644
--- a/src/widgets/itemviews/qlistview.cpp
+++ b/src/widgets/itemviews/qlistview.cpp
@@ -3185,7 +3185,12 @@ int QListView::visualIndex(const QModelIndex &index) const
Q_D(const QListView);
d->executePostedLayout();
QListViewItem itm = d->indexToListViewItem(index);
- return d->commonListView->itemIndex(itm);
+ int visualIndex = d->commonListView->itemIndex(itm);
+ for (int row = 0; row <= index.row() && visualIndex >= 0; row++) {
+ if (d->isHidden(row))
+ visualIndex--;
+ }
+ return visualIndex;
}
QT_END_NAMESPACE