diff options
Diffstat (limited to 'seriestreewidget.cpp')
-rw-r--r-- | seriestreewidget.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/seriestreewidget.cpp b/seriestreewidget.cpp index fa6ded5..24e9eb4 100644 --- a/seriestreewidget.cpp +++ b/seriestreewidget.cpp @@ -204,6 +204,7 @@ void SeriesTreeWidget::deleteFromSeries(){ void SeriesTreeWidget::readSettings(){ QSettings s; QStringList expanded = s.value("archive/expanded").toStringList(); + expanded.removeDuplicates(); expandItems(expanded); int sortOrder = s.value("archive/sortorder", Qt::DescendingOrder).toInt(); mView->sortByColumn(0, static_cast<Qt::SortOrder>(sortOrder)); @@ -267,6 +268,8 @@ void SeriesTreeWidget::filter(){ default: mProxy->setFilterRegExp(mFilterEdit->text()); } + seriesTree()->expand(QModelIndex()); + expandItems(mExpandedItems); } void SeriesTreeWidget::clearFilter(){ @@ -282,7 +285,9 @@ void SeriesTreeWidget::resort(){ } void SeriesTreeWidget::itemExpanded(const QModelIndex &what){ - mExpandedItems << what.data(SeriesTreeModel::NameRole).toString(); + if(!mExpandedItems.contains(what.data(SeriesTreeModel::NameRole).toString())){ + mExpandedItems << what.data(SeriesTreeModel::NameRole).toString(); + } } void SeriesTreeWidget::itemCollaped(const QModelIndex &what){ |