From 4a4a78b5babeb3ef38bc2806b11594467651ffa3 Mon Sep 17 00:00:00 2001 From: catch Date: Mon, 6 May 2024 21:09:22 +0100 Subject: [PATCH] Issue #3443959: DialogRenderer::getTitleAsStringable() does not support all return types of TitleResolverInterface::getTitle() --- .../Core/Render/MainContent/DialogRenderer.php | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/core/lib/Drupal/Core/Render/MainContent/DialogRenderer.php b/core/lib/Drupal/Core/Render/MainContent/DialogRenderer.php index de228be77fb..4db0cc1efcb 100644 --- a/core/lib/Drupal/Core/Render/MainContent/DialogRenderer.php +++ b/core/lib/Drupal/Core/Render/MainContent/DialogRenderer.php @@ -132,17 +132,9 @@ class DialogRenderer implements MainContentRendererInterface { * The title as a string or stringable object. */ protected function getTitleAsStringable(array $main_content, Request $request, RouteMatchInterface $route_match): \Stringable|string|null { - $title = NULL; - if (array_key_exists('#title', $main_content)) { - if (is_array($main_content['#title'])) { - $title = $this->renderer->renderInIsolation($main_content['#title']); - } - else { - $title = $main_content['#title']; - } - } - elseif ($this->titleResolver->getTitle($request, $route_match->getRouteObject())) { - $title = $this->titleResolver->getTitle($request, $route_match->getRouteObject())->render(); + $title = $main_content['#title'] ?? $this->titleResolver->getTitle($request, $route_match->getRouteObject()); + if (is_array($title)) { + $title = $this->renderer->renderInIsolation($title); } return $title; }