diff options
Diffstat (limited to 'desktop-widgets')
-rw-r--r-- | desktop-widgets/divelistview.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/desktop-widgets/divelistview.cpp b/desktop-widgets/divelistview.cpp index c08998e5f..94acfc8d2 100644 --- a/desktop-widgets/divelistview.cpp +++ b/desktop-widgets/divelistview.cpp @@ -248,11 +248,16 @@ void DiveListView::diveSelectionChanged(const QVector<QModelIndex> &indices) if (std::find(affectedTrips.begin(), affectedTrips.end(), row) == affectedTrips.end()) affectedTrips.push_back(row); } + // Disable animations when expanding trips. Otherwise, selection of + // a large number of dives becomes increadibly slow. + bool oldAnimated = isAnimated(); + setAnimated(false); MultiFilterSortModel *m = MultiFilterSortModel::instance(); for (int row: affectedTrips) { QModelIndex idx = m->index(row, 0); expand(idx); } + setAnimated(oldAnimated); selectionChangeDone(); programmaticalSelectionChange = false; |