Merge pull request #6315 from glassez/cat-tree-state

Fix category filter widget doesn't save on/off state
This commit is contained in:
sledgehammer999 2017-02-06 00:13:59 +02:00 committed by GitHub
commit fa8c69a5e1
3 changed files with 10 additions and 1 deletions

View file

@ -78,6 +78,7 @@ CategoryFilterWidget::CategoryFilterWidget(QWidget *parent)
setAttribute(Qt::WA_MacShowFocusRect, false);
#endif
setContextMenuPolicy(Qt::CustomContextMenu);
setCurrentIndex(model()->index(0, 0));
connect(this, SIGNAL(collapsed(QModelIndex)), SLOT(callUpdateGeometry()));
connect(this, SIGNAL(expanded(QModelIndex)), SLOT(callUpdateGeometry()));

View file

@ -580,7 +580,7 @@ TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferLi
, transferList, SLOT(startVisibleTorrents()));
connect(m_categoryFilterWidget, SIGNAL(categoryChanged(QString))
, transferList, SLOT(applyCategoryFilter(QString)));
onCategoryFilterStateChanged(pref->getCategoryFilterState());
toggleCategoryFilter(pref->getCategoryFilterState());
frameLayout->addWidget(m_categoryFilterWidget);
QCheckBox *trackerLabel = new QCheckBox(tr("Trackers"), this);
@ -638,6 +638,12 @@ void TransferListFiltersWidget::trackerError(BitTorrent::TorrentHandle *const to
}
void TransferListFiltersWidget::onCategoryFilterStateChanged(bool enabled)
{
toggleCategoryFilter(enabled);
Preferences::instance()->setCategoryFilterState(enabled);
}
void TransferListFiltersWidget::toggleCategoryFilter(bool enabled)
{
m_categoryFilterWidget->setVisible(enabled);
m_transferList->applyCategoryFilter(enabled ? m_categoryFilterWidget->currentCategory() : QString());

View file

@ -162,6 +162,8 @@ private slots:
void onCategoryFilterStateChanged(bool enabled);
private:
void toggleCategoryFilter(bool enabled);
TransferListWidget *m_transferList;
TrackerFiltersList *m_trackerFilters;
CategoryFilterWidget *m_categoryFilterWidget;