diff --git a/sources/content/src/ContentEntitySourcePluginUi.php b/sources/content/src/ContentEntitySourcePluginUi.php
index 66bb5af..e33fcbc 100644
--- a/sources/content/src/ContentEntitySourcePluginUi.php
+++ b/sources/content/src/ContentEntitySourcePluginUi.php
@@ -32,19 +32,10 @@ class ContentEntitySourcePluginUi extends SourcePluginUiBase {
   public $pagerLimit = 25;
 
   /**
-   * Builds search form for entity sources overview.
-   *
-   * @param array $form
-   *   Drupal form array.
-   * @param $form_state
-   *   Drupal form_state array.
-   * @param string $type
-   *   Entity type.
-   *
-   * @return array
-   *   Drupal form array.
+   * {@inheritdoc}
    */
   public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type) {
+    $form = parent::overviewSearchFormPart($form, $form_state, $type);
 
     // Add search form specific styling.
     $form['#attached']['library'][] = 'tmgmt_content/entity_source_search_form';
@@ -53,25 +44,8 @@ class ContentEntitySourcePluginUi extends SourcePluginUiBase {
     // the form alter hook.
     $form_state->set('entity_type', $type);
 
-    $form['search_wrapper'] = array(
-      '#prefix' => '<div class="tmgmt-sources-wrapper tmgmt-entity-sources-wrapper">',
-      '#suffix' => '</div>',
-      '#weight' => -15,
-    );
-    $form['search_wrapper']['search'] = array(
-      '#tree' => TRUE,
-    );
-
-    $form['search_wrapper']['search_submit'] = array(
-      '#type' => 'submit',
-      '#value' => t('Search'),
-      '#weight' => 10,
-    );
-    $form['search_wrapper']['search_cancel'] = array(
-      '#type' => 'submit',
-      '#value' => t('Cancel'),
-      '#weight' => 11,
-    );
+    $form['search_wrapper']['search_submit']['#weight'] = 10;
+    $form['search_wrapper']['search_cancel']['#weight'] = 11;
 
     $entity_type = \Drupal::entityManager()->getDefinition($type);
 
diff --git a/sources/locale/src/LocaleSourcePluginUi.php b/sources/locale/src/LocaleSourcePluginUi.php
index 3329e6f..211cd68 100644
--- a/sources/locale/src/LocaleSourcePluginUi.php
+++ b/sources/locale/src/LocaleSourcePluginUi.php
@@ -169,19 +169,10 @@ class LocaleSourcePluginUi extends SourcePluginUiBase {
   }
 
   /**
-   * Builds search form for entity sources overview.
-   *
-   * @param array $form
-   *   Drupal form array.
-   * @param $form_state
-   *   Drupal form_state array.
-   * @param $type
-   *   Entity type.
-   *
-   * @return array
-   *   Drupal form array.
+   * {@inheritdoc}
    */
   public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type) {
+    $form = parent::overviewSearchFormPart($form, $form_state, $type);
 
     $options = array();
     foreach (\Drupal::languageManager()->getLanguages() as $langcode => $language) {
@@ -190,14 +181,10 @@ class LocaleSourcePluginUi extends SourcePluginUiBase {
 
     $default_values = $this->getSearchFormSubmittedParams();
 
-    $form['search_wrapper'] = array(
-      '#prefix' => '<div class="tmgmt-sources-wrapper tmgmt-i18n_string-sources-wrapper">',
-      '#suffix' => '</div>',
-      '#weight' => -15,
-    );
-    $form['search_wrapper']['search'] = array(
-      '#tree' => TRUE,
-    );
+    $form['search_wrapper']['#prefix'] = '<div class="tmgmt-sources-wrapper tmgmt-i18n_string-sources-wrapper">';
+    $form['search_wrapper']['search_cancel']['#submit'] = array('tmgmt_submit_redirect');
+    $form['search_wrapper']['search_cancel']['#redirect'] = 'admin/tmgmt/sources/locale/default';
+
     $form['search_wrapper']['search']['label'] = array(
       '#type' => 'textfield',
       '#title' => t('Source text'),
@@ -214,16 +201,6 @@ class LocaleSourcePluginUi extends SourcePluginUiBase {
       '#empty_option' => '--',
       '#default_value' => isset($default_values['missing_target_language']) ? $default_values['missing_target_language'] : NULL,
     );
-    $form['search_wrapper']['search_submit'] = array(
-      '#type' => 'submit',
-      '#value' => t('Search'),
-    );
-    $form['search_wrapper']['search_cancel'] = array(
-      '#type' => 'submit',
-      '#value' => t('Cancel'),
-      '#submit' => array('tmgmt_submit_redirect'),
-      '#redirect' => 'admin/tmgmt/sources/locale/default',
-    );
 
     return $form;
   }
diff --git a/sources/tmgmt_config/src/ConfigSourcePluginUi.php b/sources/tmgmt_config/src/ConfigSourcePluginUi.php
index 814181a..dc5075d 100644
--- a/sources/tmgmt_config/src/ConfigSourcePluginUi.php
+++ b/sources/tmgmt_config/src/ConfigSourcePluginUi.php
@@ -33,19 +33,10 @@ class ConfigSourcePluginUi extends SourcePluginUiBase {
   public $pagerLimit = 25;
 
   /**
-   * Builds search form for entity sources overview.
-   *
-   * @param array $form
-   *   Drupal form array.
-   * @param $form_state
-   *   Drupal form_state array.
-   * @param string $type
-   *   Entity type.
-   *
-   * @return array
-   *   Drupal form array.
+   * {@inheritdoc}
    */
   public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type) {
+    $form = parent::overviewSearchFormPart($form, $form_state, $type);
 
     // Add search form specific styling.
     $form['#attached']['library'][] = 'tmgmt_content/entity_source_search_form';
@@ -53,25 +44,9 @@ class ConfigSourcePluginUi extends SourcePluginUiBase {
     // Add entity type value into form array so that it is available in
     // the form alter hook.
     $form_state->set('entity_type', $type);
-    $form['search_wrapper'] = array(
-      '#prefix' => '<div class="tmgmt-sources-wrapper tmgmt-entity-sources-wrapper">',
-      '#suffix' => '</div>',
-      '#weight' => -15,
-    );
-    $form['search_wrapper']['search'] = array(
-      '#tree' => TRUE,
-    );
 
-    $form['search_wrapper']['search_submit'] = array(
-      '#type' => 'submit',
-      '#value' => t('Search'),
-      '#weight' => 10,
-    );
-    $form['search_wrapper']['search_cancel'] = array(
-      '#type' => 'submit',
-      '#value' => t('Cancel'),
-      '#weight' => 11,
-    );
+    $form['search_wrapper']['search_submit']['#weight'] = 10;
+    $form['search_wrapper']['search_cancel']['#weight'] = 11;
 
     if ($type == ConfigSource::SIMPLE_CONFIG) {
       $label_key = 'name';
@@ -84,7 +59,6 @@ class ConfigSourcePluginUi extends SourcePluginUiBase {
       $label = $entity_type->getLabel();
     }
 
-
     if (!empty($label_key)) {
       $form['search_wrapper']['search'][$label_key] = array(
         '#type' => 'textfield',
diff --git a/src/SourcePluginUiBase.php b/src/SourcePluginUiBase.php
index a0ee22e..0ffa106 100644
--- a/src/SourcePluginUiBase.php
+++ b/src/SourcePluginUiBase.php
@@ -76,4 +76,39 @@ class SourcePluginUiBase extends PluginBase implements SourcePluginUiInterface {
     return array();
   }
 
+  /**
+   * Builds search form for entity sources overview.
+   *
+   * @param array $form
+   *   Drupal form array.
+   * @param FormStateInterface $form_state
+   *   Drupal form_state array.
+   * @param $type
+   *   Entity type.
+   *
+   * @return array
+   *   Drupal form array.
+   */
+  public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type) {
+    $form['search_wrapper'] = array(
+      '#prefix' => '<div class="tmgmt-sources-wrapper tmgmt-entity-sources-wrapper">',
+      '#suffix' => '</div>',
+      '#weight' => -15,
+    );
+    $form['search_wrapper']['search'] = array(
+      '#tree' => TRUE,
+    );
+    $form['search_wrapper']['search_submit'] = array(
+      '#type' => 'submit',
+      '#value' => t('Search'),
+    );
+    $form['search_wrapper']['search_cancel'] = array(
+      '#type' => 'submit',
+      '#value' => t('Cancel'),
+      '#redirect' => '/',
+    );
+
+    return $form;
+  }
+
 }
