Correctly detect whether option is actually changed

PR #23574.
This commit is contained in:
Vladimir Golovnev
2025-12-06 11:02:31 +03:00
committed by GitHub
parent d918c43aba
commit a59238f4ea
2 changed files with 9 additions and 3 deletions

View File

@@ -159,12 +159,17 @@ TransferListFiltersWidget::TransferListFiltersWidget(QWidget *parent, TransferLi
delete layoutItem;
};
if (pref->useSeparateTrackerStatusFilter())
m_useSeparateTrackerStatusFilter = pref->useSeparateTrackerStatusFilter();
if (m_useSeparateTrackerStatusFilter)
createTrackerStatusItem();
connect(pref, &Preferences::changed, this, [pref, createTrackerStatusItem, removeTrackerStatusItem]
connect(pref, &Preferences::changed, this, [this, pref, createTrackerStatusItem, removeTrackerStatusItem]
{
if (pref->useSeparateTrackerStatusFilter())
if (m_useSeparateTrackerStatusFilter == pref->useSeparateTrackerStatusFilter())
return;
m_useSeparateTrackerStatusFilter = !m_useSeparateTrackerStatusFilter;
if (m_useSeparateTrackerStatusFilter)
createTrackerStatusItem();
else
removeTrackerStatusItem();

View File

@@ -53,4 +53,5 @@ public:
private:
TransferListWidget *m_transferList = nullptr;
TrackersFilterWidget *m_trackersFilterWidget = nullptr;
bool m_useSeparateTrackerStatusFilter = false;
};