diff --git a/core/modules/views/src/Plugin/Block/ViewsExposedFilterBlock.php b/core/modules/views/src/Plugin/Block/ViewsExposedFilterBlock.php index 2dd4652..ec066ab 100644 --- a/core/modules/views/src/Plugin/Block/ViewsExposedFilterBlock.php +++ b/core/modules/views/src/Plugin/Block/ViewsExposedFilterBlock.php @@ -24,9 +24,23 @@ public function getCacheContexts() { /** * {@inheritdoc} + * + * @return array + * A renderable array representing the content of the block with additional + * context of current view and display ID. */ public function build() { $output = $this->view->display_handler->viewExposedFormBlocks(); + // Provide the context for block build and block view alter hooks. + // \Drupal\views\Plugin\Block\ViewsBlock::build() adds the same context in + // \Drupal\views\ViewExecutable::buildRenderable() using + // \Drupal\views\Plugin\views\display\DisplayPluginBase::buildRenderable(). + if (is_array($output) && !empty($output)) { + $output += [ + '#view' => $this->view, + '#display_id' => $this->displayID, + ]; + } // Before returning the block output, convert it to a renderable array with // contextual links.