diff --git a/includes/ds.displays.inc b/includes/ds.displays.inc
index 4216aee..4a4480d 100644
--- a/includes/ds.displays.inc
+++ b/includes/ds.displays.inc
@@ -42,7 +42,7 @@ function ds_layout_list() {
 
         $row[] = $bundle['label'];
         $links = array(l(t('Manage display'), $path . '/display'));
-        if ($entity['base table'] == 'node' && (module_exists('ds_forms') && !module_exists('rel'))) {
+        if (in_array($entity['base table'], array('node', 'comment', 'bean', 'taxonomy_term_data', 'users', 'file_managed', 'field_collection_item')) && (module_exists('ds_forms') && !module_exists('rel'))) {
           $links[] = l(t('Manage form'), $path . '/fields');
         }
         $row[] = implode(' - ', $links);
diff --git a/includes/ds.field_ui.inc b/includes/ds.field_ui.inc
index 3b80c13..07edf5e 100644
--- a/includes/ds.field_ui.inc
+++ b/includes/ds.field_ui.inc
@@ -574,7 +574,14 @@ function ds_field_ui_layouts_save($form, &$form_state) {
     $record->settings['layout_wrapper'] = 'div';
     $fields = _ds_sort_fields($form_state['values']['fields'], 'weight');
     foreach ($fields as $field_key => $field) {
-      if (isset($field['type']) && $field['type'] != 'hidden') {
+
+      // Ignore new fieldgroup, new field or existing field.
+      if (in_array($field_key, array('_add_new_field', '_add_existing_field', '_add_new_group'))) {
+        continue;
+      }
+
+      // Can either be form or display.
+      if ((isset($field['type']) && $field['type'] != 'hidden') || $record->view_mode == 'form') {
         $record->settings['regions'][$first_region][] = $field_key;
         $record->settings['fields'][$field_key] = $first_region;
       }
diff --git a/modules/ds_forms/ds_forms.module b/modules/ds_forms/ds_forms.module
index 4e61c75..bf25cbe 100644
--- a/modules/ds_forms/ds_forms.module
+++ b/modules/ds_forms/ds_forms.module
@@ -62,7 +62,7 @@ function ds_forms_theme() {
 function ds_forms_form_field_ui_field_overview_form_alter(&$form, &$form_state) {
 
   // We currently only work on node forms or custom forms.
-  if ($form['#entity_type'] == 'node' || $form['#entity_type'] == 'rel_build') {
+  if (in_array($form['#entity_type'], array('node', 'comment', 'bean', 'taxonomy_term', 'user', 'field_collection_item', 'file')) || $form['#entity_type'] == 'rel_build') {
 
     // Add necessary variables for DS Field UI.
     $form['#view_mode'] = 'form';
