/** * Constructor * * @param View\Element\Template\Context $context * @param View\LayoutFactory $layoutFactory * @param View\Layout\ReaderPool $layoutReaderPool * @param Framework\Translate\InlineInterface $translateInline * @param View\Layout\BuilderFactory $layoutBuilderFactory * @param View\Layout\GeneratorPool $generatorPool * @param bool $isIsolated */ public function __construct(View\Element\Template\Context $context, View\LayoutFactory $layoutFactory, View\Layout\ReaderPool $layoutReaderPool, Framework\Translate\InlineInterface $translateInline, View\Layout\BuilderFactory $layoutBuilderFactory, View\Layout\GeneratorPool $generatorPool, $isIsolated = false) { $this->layoutFactory = $layoutFactory; $this->layoutBuilderFactory = $layoutBuilderFactory; $this->layoutReaderPool = $layoutReaderPool; $this->eventManager = $context->getEventManager(); $this->request = $context->getRequest(); $this->translateInline = $translateInline; // TODO Shared layout object will be deleted in MAGETWO-28359 $this->layout = $isIsolated ? $this->layoutFactory->create(['reader' => $this->layoutReaderPool, 'generatorPool' => $generatorPool]) : $context->getLayout(); $this->layout->setGeneratorPool($generatorPool); $this->initLayoutBuilder(); }