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();