diff --git a/sources/tmgmt_config/src/ConfigSourcePluginUi.php b/sources/tmgmt_config/src/ConfigSourcePluginUi.php
index 7dca1d1..ba914d0 100644
--- a/sources/tmgmt_config/src/ConfigSourcePluginUi.php
+++ b/sources/tmgmt_config/src/ConfigSourcePluginUi.php
@@ -254,8 +254,33 @@ class ConfigSourcePluginUi extends SourcePluginUiBase {
     // don't have an entity type and display them through overviewRowSimple().
     if ($type == ConfigSource::SIMPLE_CONFIG) {
       $definitions = \Drupal::service('plugin.manager.config_translation.mapper')->getDefinitions();
+      $definitions_filter = array();
+      // Filtering by title first to have a better order.
       foreach ($definitions as $definition_id => $definition) {
         if (!isset($definition['entity_type'])) {
+          if (!isset($search_property_params['name'])) {
+            $definitions_filter[$definition_id] = $definition;
+          }
+          elseif (strpos(strtolower($definition['title']), strtolower($search_property_params['name'])) !== FALSE) {
+            $definitions_filter[$definition_id] = $definition;
+          }
+        }
+      }
+      // Filtering by target language and target status.
+      foreach ($definitions_filter as $definition_id => $definition) {
+        // If target language is set, filter with the target status.
+        if (isset($search_property_params['target_language'])) {
+          // Show translated config entities.
+          if ($search_property_params['target_status'] == 'translated' && $this->isTranslated($search_property_params['target_language'], $definition['names'][0])) {
+            $form['items']['#options'][$definition_id] = $this->overviewRowSimple($definition);
+          }
+          // Show untranslated config entities.
+          elseif (($search_property_params['target_status'] == 'untranslated' && !$this->isTranslated($search_property_params['target_language'], $definition['names'][0]))) {
+            $form['items']['#options'][$definition_id] = $this->overviewRowSimple($definition);
+          }
+        }
+        // List everything if no target language property is set.
+        else {
           $form['items']['#options'][$definition_id] = $this->overviewRowSimple($definition);
         }
       }
diff --git a/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php b/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php
index ac066d9..b38e85c 100644
--- a/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php
+++ b/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php
@@ -286,6 +286,28 @@ class ConfigSourceListTest extends EntityTestBase {
       $counter += count($subarray);
     }
     $this->assertEqual($counter, 2);
+
+    // Save one translation.
+    $this->drupalGet('admin/tmgmt/items/1');
+    $this->drupalPostForm(NULL, array(), t('Save as completed'));
+
+    // Test if the filter works.
+    $filters = array(
+      'search[name]' => 'system',
+    );
+    $this->drupalPostForm('admin/tmgmt/sources/config/_simple_config', $filters, t('Search'));
+
+    // Check if the list has 2 rows.
+    $this->assertEqual(count($this->xpath('//tbody/tr')), 2);
+
+    $filters = array(
+      'search[target_language]' => 'de',
+      'search[target_status]' => 'translated',
+    );
+    $this->drupalPostForm('admin/tmgmt/sources/config/_simple_config', $filters, t('Search'));
+
+    // Just 1 simple configuration was translated.
+    $this->assertEqual(count($this->xpath('//tbody/tr')), 1);
   }
 
 }
