<?php
namespace Drupal\views\Plugin\Block;
+
use Drupal\Core\Cache\Cache;
/**
/**
* {@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.