diff --git a/sources/tmgmt_config/src/ConfigSourcePluginUi.php b/sources/tmgmt_config/src/ConfigSourcePluginUi.php
index 7dca1d1..512d802 100644
--- a/sources/tmgmt_config/src/ConfigSourcePluginUi.php
+++ b/sources/tmgmt_config/src/ConfigSourcePluginUi.php
@@ -253,11 +253,9 @@ class ConfigSourcePluginUi extends SourcePluginUiBase {
     // If the source is of type '_simple_config', we get all definitions that
     // 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 = $this->getFilteredSimpleConfigDefinitions($search_property_params);
       foreach ($definitions as $definition_id => $definition) {
-        if (!isset($definition['entity_type'])) {
-          $form['items']['#options'][$definition_id] = $this->overviewRowSimple($definition);
-        }
+        $form['items']['#options'][$definition_id] = $this->overviewRowSimple($definition);
       }
     }
     // If there is an entity type, list all entities for that.
@@ -415,4 +413,45 @@ class ConfigSourcePluginUi extends SourcePluginUiBase {
     return $entities;
   }
 
+  /**
+   * Filter translatable definitions.
+   *
+   * @param array $search_properties
+   *   Search properties that are going to be used for the filter.
+   *
+   * @return \Drupal\Core\Entity\EntityTypeInterface[]
+   *   Array of translatable definitions.
+   */
+  public function getFilteredSimpleConfigDefinitions($search_properties = array()) {
+    $definitions = \Drupal::service('plugin.manager.config_translation.mapper')->getDefinitions();
+    $definitions = array_filter($definitions, function ($definition) use ($search_properties) {
+      if (isset($definition['entity_type'])) {
+        return FALSE;
+      }
+      else {
+        if (isset($search_properties['target_language'])) {
+          $target_status = $search_properties['target_status'];
+          $target_language = $search_properties['target_language'];
+          if ($target_status == 'translated' && isset($search_properties['name'])) {
+            return $this->isTranslated($target_language, $definition['names'][0]) && strpos(strtolower($definition['title']), strtolower($search_properties['name'])) !== FALSE;
+          }
+          elseif ($target_status == 'untranslated' && isset($search_properties['name'])) {
+              return !$this->isTranslated($target_language, $definition['names'][0]) && strpos(strtolower($definition['title']), strtolower($search_properties['name'])) !== FALSE;
+          }
+          elseif ($target_status == 'translated') {
+              return $this->isTranslated($target_language, $definition['names'][0]);
+          }
+          return !$this->isTranslated($target_language, $definition['names'][0]);
+        }
+        else {
+          if (isset($search_properties['name'])) {
+            return strpos(strtolower($definition['title']), strtolower($search_properties['name'])) !== FALSE;
+          }
+          return TRUE;
+        }
+      }
+    });
+    return $definitions;
+  }
+
 }
diff --git a/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php b/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php
index ac066d9..7d3b50d 100644
--- a/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php
+++ b/sources/tmgmt_config/src/Tests/ConfigSourceListTest.php
@@ -286,6 +286,48 @@ class ConfigSourceListTest extends EntityTestBase {
       $counter += count($subarray);
     }
     $this->assertEqual($counter, 2);
+
+    // Save one translation.
+    $this->drupalPostForm('admin/tmgmt/items/1', 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);
+
+    // Filter with name and target_status.
+    $filters = array(
+      'search[name]' => 'settings',
+      'search[target_language]' => 'de',
+      'search[target_status]' => 'untranslated',
+    );
+    $this->drupalPostForm('admin/tmgmt/sources/config/_simple_config', $filters, t('Search'));
+
+    // There is 1 simple configuration untranslated with name 'settings'.
+    $this->assertEqual(count($this->xpath('//tbody/tr')), 1);
+
+    $filters = array(
+      'search[name]' => 'sys',
+      'search[target_language]' => 'de',
+      'search[target_status]' => 'translated',
+    );
+    $this->drupalPostForm('admin/tmgmt/sources/config/_simple_config', $filters, t('Search'));
+
+    // There are 2 simple configurations with name 'sys' but just 1 is translated.
+    $this->assertEqual(count($this->xpath('//tbody/tr')), 1);
   }
 
 }
