diff -u b/core/modules/config_translation/config_translation.module b/core/modules/config_translation/config_translation.module --- b/core/modules/config_translation/config_translation.module +++ b/core/modules/config_translation/config_translation.module @@ -161,7 +161,7 @@ /** * Implements hook_entity_operation(). */ -function config_translation_entity_operation_info(EntityInterface $entity) { +function config_translation_entity_operation(EntityInterface $entity) { $operations = array(); if (\Drupal::currentUser()->hasPermission('translate configuration')) { $operations['translate'] = array( only in patch2: unchanged: --- a/core/modules/field/lib/Drupal/field/Entity/FieldInstanceConfig.php +++ b/core/modules/field/lib/Drupal/field/Entity/FieldInstanceConfig.php @@ -23,6 +23,7 @@ * id = "field_instance_config", * label = @Translation("Field instance"), * controllers = { + * "list_builder" = "\Drupal\Core\Config\Entity\ConfigEntityListBuilder", * "storage" = "Drupal\field\FieldInstanceConfigStorageController" * }, * config_prefix = "instance", only in patch2: unchanged: --- a/core/modules/field_ui/lib/Drupal/field_ui/FieldOverview.php +++ b/core/modules/field_ui/lib/Drupal/field_ui/FieldOverview.php @@ -7,6 +7,7 @@ namespace Drupal\field_ui; +use Drupal\Core\Entity\EntityListBuilderInterface; use Drupal\Core\Entity\EntityManagerInterface; use Drupal\Core\Extension\ModuleHandlerInterface; use Drupal\Core\Field\FieldTypePluginManagerInterface; @@ -27,26 +28,16 @@ class FieldOverview extends OverviewBase { protected $fieldTypeManager; /** - * The module handler service. - * - * @var \Drupal\Core\Extension\ModuleHandlerInterface - */ - protected $moduleHandler; - - /** * Constructs a new FieldOverview. * * @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager * The entity manager. * @param \Drupal\Core\Field\FieldTypePluginManagerInterface $field_type_manager * The field type manager - * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler - * The module handler to invoke hooks on. */ - public function __construct(EntityManagerInterface $entity_manager, FieldTypePluginManagerInterface $field_type_manager, ModuleHandlerInterface $module_handler) { + public function __construct(EntityManagerInterface $entity_manager, FieldTypePluginManagerInterface $field_type_manager) { parent::__construct($entity_manager); $this->fieldTypeManager = $field_type_manager; - $this->moduleHandler = $module_handler; } /** @@ -55,8 +46,7 @@ public function __construct(EntityManagerInterface $entity_manager, FieldTypePlu public static function create(ContainerInterface $container) { return new static( $container->get('entity.manager'), - $container->get('plugin.manager.field.field_type'), - $container->get('module_handler') + $container->get('plugin.manager.field.field_type') ); } @@ -164,11 +154,9 @@ public function buildForm(array $form, array &$form_state, $entity_type_id = NUL 'route_parameters' => $route_parameters, 'attributes' => array('title' => $this->t('Delete instance.')), ); - // Allow altering the operations on this entity listing. - $this->moduleHandler->alter('entity_operation', $links, $instance); $table[$name]['operations']['data'] = array( '#type' => 'operations', - '#links' => $links, + '#links' => $this->entityManager->getListBuilder('field_instance_config')->getOperations($instance), ); if (!empty($field->locked)) {