diff --git a/src/plugins/help/filtersettingspage.cpp b/src/plugins/help/filtersettingspage.cpp index 799fabe07843962f52457cb7da5d0b2119f165f0..d4429133a34d75d8e80577353a1995eed7eee9d1 100644 --- a/src/plugins/help/filtersettingspage.cpp +++ b/src/plugins/help/filtersettingspage.cpp @@ -106,9 +106,20 @@ void FilterSettingsPage::updateFilterPage() m_ui.attributeWidget->clear(); m_filterMapBackup.clear(); + + QString lastTrUnfiltered; + const QString trUnfiltered = tr("Unfiltered"); const QHelpEngineCore &engine = LocalHelpManager::helpEngine(); + if (engine.customValue(Help::Constants::WeAddedFilterKey).toInt() == 1) { + lastTrUnfiltered = + engine.customValue(Help::Constants::PreviousFilterNameKey).toString(); + } + const QStringList &filters = engine.customFilters(); foreach (const QString &filter, filters) { + if (filter == trUnfiltered || filter == lastTrUnfiltered) + continue; + const QStringList &attributes = engine.filterAttributes(filter); m_filterMapBackup.insert(filter, attributes); if (!m_filterMap.contains(filter)) diff --git a/src/plugins/help/helpconstants.h b/src/plugins/help/helpconstants.h index 00b8c322a469f775e0b4aea72a730a43e98bea12..b44fdf9b9253badffcfba1f9b08785b6fee11025 100644 --- a/src/plugins/help/helpconstants.h +++ b/src/plugins/help/helpconstants.h @@ -44,6 +44,8 @@ enum { static const QLatin1String ListSeparator("|"); static const QLatin1String DefaultZoomFactor("0.0"); static const QLatin1String AboutBlank("about:blank"); +static const QLatin1String WeAddedFilterKey("UnfilteredFilterInserted"); +static const QLatin1String PreviousFilterNameKey("UnfilteredFilterName"); const int P_MODE_HELP = 70; const char * const ID_MODE_HELP = "Help"; diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp index d06e0ccda6133889cb0fe34484cc84e1d176afdb..b216617fc653262f59ae15c92943a5117c375b7e 100644 --- a/src/plugins/help/helpplugin.cpp +++ b/src/plugins/help/helpplugin.cpp @@ -456,11 +456,10 @@ void HelpPlugin::resetFilter() engine->removeCustomFilter(filter); } - const QLatin1String weAddedFilterKey("UnfilteredFilterInserted"); - const QLatin1String previousFilterNameKey("UnfilteredFilterName"); - if (engine->customValue(weAddedFilterKey).toInt() == 1) { - // we added a filter at some point, remove previously added filter - const QString &filter = engine->customValue(previousFilterNameKey).toString(); + // we added a filter at some point, remove previously added filter + if (engine->customValue(Help::Constants::WeAddedFilterKey).toInt() == 1) { + const QString &filter = + engine->customValue(Help::Constants::PreviousFilterNameKey).toString(); if (!filter.isEmpty()) engine->removeCustomFilter(filter); } @@ -469,8 +468,8 @@ void HelpPlugin::resetFilter() const QString filterName = tr("Unfiltered"); engine->removeCustomFilter(filterName); engine->addCustomFilter(filterName, QStringList()); - engine->setCustomValue(weAddedFilterKey, 1); - engine->setCustomValue(previousFilterNameKey, filterName); + engine->setCustomValue(Help::Constants::WeAddedFilterKey, 1); + engine->setCustomValue(Help::Constants::PreviousFilterNameKey, filterName); engine->setCurrentFilter(filterName); updateFilterComboBox();