diff -u b/src/EventSubscriber/EuCookieComplianceConfigEventsSubscriber.php b/src/EventSubscriber/EuCookieComplianceConfigEventsSubscriber.php --- b/src/EventSubscriber/EuCookieComplianceConfigEventsSubscriber.php +++ b/src/EventSubscriber/EuCookieComplianceConfigEventsSubscriber.php @@ -58,17 +58,6 @@ $this->messenger = $messenger; } - /** - * {@inheritdoc} - */ - public static function create(ContainerInterface $container) { - return new static( - $container->get('file_system'), - $container->get('file.repository'), - $container->get('messenger') - ); - } - /** * {@inheritdoc} * diff -u b/src/Plugin/Block/CookieSettingsButtonBlock.php b/src/Plugin/Block/CookieSettingsButtonBlock.php --- b/src/Plugin/Block/CookieSettingsButtonBlock.php +++ b/src/Plugin/Block/CookieSettingsButtonBlock.php @@ -8,6 +8,7 @@ use Drupal\Core\Url; use Drupal\Core\Config\ConfigFactoryInterface; use Symfony\Component\DependencyInjection\ContainerInterface; +use Drupal\Core\Plugin\ContainerFactoryPluginInterface; /** * Provides a "CookieSettingsButtonBlock" block. @@ -17,7 +18,7 @@ * admin_label = @Translation("EU Cookie Compliance Button Block") * ) */ -class CookieSettingsButtonBlock extends BlockBase { +class CookieSettingsButtonBlock extends BlockBase implements ContainerFactoryPluginInterface { /** * Config factory. @@ -32,15 +33,19 @@ * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory * The config factory. */ - public function __construct(ConfigFactoryInterface $config_factory) { + public function __construct( array $configuration, $plugin_id, $plugin_definition, ConfigFactoryInterface $config_factory) { + parent::__construct($configuration, $plugin_id, $plugin_definition); $this->configFactory = $config_factory; } /** * {@inheritdoc} */ - public static function create(ContainerInterface $container) { + public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) { return new static( + $configuration, + $plugin_id, + $plugin_definition, $container->get('config.factory') ); } only in patch2: unchanged: --- a/eu_cookie_compliance.services.yml +++ b/eu_cookie_compliance.services.yml @@ -9,6 +9,7 @@ services: class: Drupal\eu_cookie_compliance\EventSubscriber\EuCookieComplianceConfigEventsSubscriber tags: - { name: event_subscriber } + arguments: ['@file_system', '@file.repository', '@messenger'] eu_cookie_compliance.clear_cache: class: Drupal\eu_cookie_compliance\Plugin\EuCcClearCache arguments: ['@module_handler', '@language_manager', '@entity_type.manager', '@extension.list.theme', '@cache.render']