diff --git a/core/modules/field/field.module b/core/modules/field/field.module
index 7288943..2cdf220 100644
--- a/core/modules/field/field.module
+++ b/core/modules/field/field.module
@@ -614,9 +614,9 @@ function field_bundle_settings($entity_type, $bundle, $settings = NULL) {
/**
* Returns form mode settings in a given bundle.
*
- * @param $entity_type
+ * @param string $entity_type
* The type of entity; e.g. 'node' or 'user'.
- * @param $bundle
+ * @param string $bundle
* The bundle name to return form mode settings for.
*
* @return
diff --git a/core/modules/field/lib/Drupal/field/Plugin/Type/Widget/WidgetInterface.php b/core/modules/field/lib/Drupal/field/Plugin/Type/Widget/WidgetInterface.php
index 6e83800..1641b44 100644
--- a/core/modules/field/lib/Drupal/field/Plugin/Type/Widget/WidgetInterface.php
+++ b/core/modules/field/lib/Drupal/field/Plugin/Type/Widget/WidgetInterface.php
@@ -44,7 +44,7 @@ public function settingsForm(array $form, array &$form_state);
* configurable settings, and no UI will be provided to display a settings
* form.
*
- * @return array()
+ * @return array
* A short summary of the widget settings.
*/
public function settingsSummary();
diff --git a/core/modules/field_ui/field_ui.services.yml b/core/modules/field_ui/field_ui.services.yml
index 3c66daec..4c8febe 100644
--- a/core/modules/field_ui/field_ui.services.yml
+++ b/core/modules/field_ui/field_ui.services.yml
@@ -11,4 +11,4 @@ services:
access_check.field_ui.forn_mode:
class: Drupal\field_ui\Access\FormModeAccessCheck
tags:
- - { name: access_check }
\ No newline at end of file
+ - { name: access_check }
diff --git a/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverview.php b/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverview.php
index cc7c79d..0727f3f 100644
--- a/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverview.php
+++ b/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverview.php
@@ -54,9 +54,16 @@ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, En
);
$label_position = array_search('plugin', array_keys($field_row));
- $extra_field_row = array_slice($field_row, 0, $label_position, TRUE) + $label + array_slice($field_row, $label_position, count($field_row) - 1, TRUE);
+ $field_row = array_slice($field_row, 0, $label_position, TRUE) + $label + array_slice($field_row, $label_position, count($field_row) - 1, TRUE);
- return $extra_field_row;
+ // Update the (invisible) title of the 'plugin' column.
+ $field_row['plugin']['#title'] = t('Formatter for @title', array('@title' => $instance['label']));
+ if (isset($field_row['plugin']['settings_edit_form'])) {
+ $plugin_type_info = $entity_display->getRenderer($field_id)->getDefinition();
+ $field_row['plugin']['settings_edit_form']['label']['#markup'] = t('Format settings:') . ' ' . $plugin_type_info['label'] . '';
+ }
+
+ return $field_row;
}
/**
diff --git a/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php b/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php
index 9008049..905a9a4 100644
--- a/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php
+++ b/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php
@@ -2,7 +2,7 @@
/**
* @file
- * Definition of Drupal\field_ui\DisplayOverview.
+ * Contains \Drupal\field_ui\DisplayOverviewBase.
*/
namespace Drupal\field_ui;
@@ -34,7 +34,7 @@
protected $fieldTypes;
/**
- * Constructs a new DisplayOverview.
+ * Constructs a new DisplayOverviewBase.
*
* @param \Drupal\Core\Entity\EntityManager $entity_manager
* The entity manager.
@@ -153,7 +153,7 @@ public function buildForm(array $form, array &$form_state, $entity_type = NULL,
}
// In overviews involving nested rows from contributed modules (i.e
- // field_group), the 'format type' selects can trigger a series of changes
+ // field_group), the 'plugin type' selects can trigger a series of changes
// in child rows. The #ajax behavior is therefore not attached directly to
// the selects, but triggered by the client-side script through a hidden
// #ajax 'Refresh' button. A hidden 'refresh_rows' input tracks the name of
@@ -249,7 +249,7 @@ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, En
$field_row['plugin'] = array(
'type' => array(
'#type' => 'select',
- '#title' => t('Formatter for @title', array('@title' => $instance['label'])),
+ '#title' => t('Plugin for @title', array('@title' => $instance['label'])),
'#title_display' => 'invisible',
'#options' => $this->getPluginOptions($field['type']),
'#default_value' => $display_options ? $display_options['type'] : 'hidden',
@@ -259,13 +259,13 @@ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, En
'settings_edit_form' => array(),
);
- // Check the currently selected formatter, and merge persisted values for
- // formatter settings.
+ // Check the currently selected plugin, and merge persisted values for its
+ // settings.
if (isset($form_state['values']['fields'][$field_id]['type'])) {
$display_options['type'] = $form_state['values']['fields'][$field_id]['type'];
}
- if (isset($form_state['formatter_settings'][$field_id])) {
- $display_options['settings'] = $form_state['formatter_settings'][$field_id];
+ if (isset($form_state['plugin_settings'][$field_id])) {
+ $display_options['settings'] = $form_state['plugin_settings'][$field_id];
}
// Get the corresponding plugin object.
@@ -288,8 +288,6 @@ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, En
$field_row['plugin']['settings_edit_form'] = array();
if ($plugin) {
- $formatter_type_info = $plugin->getDefinition();
-
// Generate the settings form and allow other modules to alter it.
$settings_form = $plugin->settingsForm($form, $form_state);
$context = array(
@@ -308,7 +306,7 @@ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, En
'#attributes' => array('class' => array('field-plugin-settings-edit-form')),
'#parents' => array('fields', $field_id, 'settings_edit_form'),
'label' => array(
- '#markup' => t('Format settings:') . ' ' . $formatter_type_info['label'] . '',
+ '#markup' => t('Plugin settings'),
),
'settings' => $settings_form,
'actions' => array(
@@ -339,7 +337,7 @@ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, En
$field_row['settings_edit'] = array();
if ($plugin) {
- // Display a summary of the current formatter settings, and (if the
+ // Display a summary of the current plugin settings, and (if the
// summary is not empty) a button to edit them.
$summary = $plugin->settingsSummary();
@@ -466,8 +464,8 @@ public function submitForm(array &$form, array &$form_state) {
if (isset($values['settings_edit_form']['settings'])) {
$settings = $values['settings_edit_form']['settings'];
}
- elseif (isset($form_state['formatter_settings'][$field_name])) {
- $settings = $form_state['formatter_settings'][$field_name];
+ elseif (isset($form_state['plugin_settings'][$field_name])) {
+ $settings = $form_state['plugin_settings'][$field_name];
}
elseif ($current_options = $display->getComponent($field_name)) {
$settings = $current_options['settings'];
diff --git a/core/modules/field_ui/lib/Drupal/field_ui/FormDisplayOverview.php b/core/modules/field_ui/lib/Drupal/field_ui/FormDisplayOverview.php
index 22554c6..733c69d 100644
--- a/core/modules/field_ui/lib/Drupal/field_ui/FormDisplayOverview.php
+++ b/core/modules/field_ui/lib/Drupal/field_ui/FormDisplayOverview.php
@@ -9,6 +9,8 @@
use Drupal\Component\Utility\NestedArray;
use Drupal\Core\ControllerInterface;
+use Drupal\entity\EntityDisplayBaseInterface;
+use Drupal\field\FieldInstanceInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
@@ -36,6 +38,22 @@ public function getFormID() {
/**
* {@inheritdoc}
*/
+ protected function buildFieldRow($field_id, FieldInstanceInterface $instance, EntityDisplayBaseInterface $entity_display, array $form, array &$form_state) {
+ $field_row = parent::buildFieldRow($field_id, $instance, $entity_display, $form, $form_state);
+
+ // Update the (invisible) title of the 'plugin' column.
+ $field_row['plugin']['#title'] = t('Formatter for @title', array('@title' => $instance['label']));
+ if (!empty($field_row['plugin']['settings_edit_form']) && ($plugin = $entity_display->getRenderer($field_id))) {
+ $plugin_type_info = $plugin->getDefinition();
+ $field_row['plugin']['settings_edit_form']['label']['#markup'] = t('Widget settings:') . ' ' . $plugin_type_info['label'] . '';
+ }
+
+ return $field_row;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
protected function getEntityDisplay($mode) {
return entity_get_form_display($this->entity_type, $this->bundle, $mode);
}
diff --git a/core/modules/file/lib/Drupal/file/Plugin/field/widget/FileWidget.php b/core/modules/file/lib/Drupal/file/Plugin/field/widget/FileWidget.php
index 4eebf6c..c719d07 100644
--- a/core/modules/file/lib/Drupal/file/Plugin/field/widget/FileWidget.php
+++ b/core/modules/file/lib/Drupal/file/Plugin/field/widget/FileWidget.php
@@ -50,6 +50,15 @@ public function settingsForm(array $form, array &$form_state) {
}
/**
+ * {@inheritdoc}
+ */
+ public function settingsSummary() {
+ $summary = array();
+ $summary[] = t('Progress indicator: @progress_indicator', array('@progress_indicator' => $this->getSetting('progress_indicator')));
+ return $summary;
+ }
+
+ /**
* Overrides \Drupal\field\Plugin\Type\Widget\WidgetBase::formMultipleElements().
*
* Special handling for draggable multiple widgets and 'add more' button.
diff --git a/core/modules/image/lib/Drupal/image/Plugin/field/widget/ImageWidget.php b/core/modules/image/lib/Drupal/image/Plugin/field/widget/ImageWidget.php
index 8062ff6..e24f863 100644
--- a/core/modules/image/lib/Drupal/image/Plugin/field/widget/ImageWidget.php
+++ b/core/modules/image/lib/Drupal/image/Plugin/field/widget/ImageWidget.php
@@ -52,6 +52,30 @@ public function settingsForm(array $form, array &$form_state) {
}
/**
+ * {@inheritdoc}
+ */
+ public function settingsSummary() {
+ $summary = parent::settingsSummary();
+
+ $image_styles = image_style_options(FALSE);
+ // Unset possible 'No defined styles' option.
+ unset($image_styles['']);
+ // Styles could be lost because of enabled/disabled modules that defines
+ // their styles in code.
+ $image_style_setting = $this->getSetting('preview_image_style');
+ if (isset($image_styles[$image_style_setting])) {
+ $preview_image_style = t('Preview image style: @style', array('@style' => $image_styles[$image_style_setting]));
+ }
+ else {
+ $preview_image_style = t('Original image');
+ }
+
+ array_unshift($summary, $preview_image_style);
+
+ return $summary;
+ }
+
+ /**
* Overrides \Drupal\file\Plugin\field\widget\FileWidget::formMultipleElements().
*
* Special handling for draggable multiple widgets and 'add more' button.