From f6d4017f4c6e6bcf84c61bed328ce39e35e6a4f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Fri, 21 Feb 2025 07:13:08 +0100 Subject: [PATCH 01/10] Issue #3507866: Enable the Navigation Top Bar when Navigation is enabled --- core/modules/navigation/src/NavigationRenderer.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/core/modules/navigation/src/NavigationRenderer.php b/core/modules/navigation/src/NavigationRenderer.php index fe8792bc4926..dfb9dd7cc779 100644 --- a/core/modules/navigation/src/NavigationRenderer.php +++ b/core/modules/navigation/src/NavigationRenderer.php @@ -204,10 +204,6 @@ protected function getContentTop(): array { * @see hook_page_top() */ public function buildTopBar(array &$page_top): void { - if (!$this->moduleHandler->moduleExists('navigation_top_bar')) { - return; - } - $page_top['top_bar'] = [ '#type' => 'top_bar', '#access' => $this->currentUser->hasPermission('access navigation'), @@ -236,7 +232,7 @@ public function removeLocalTasks(array &$build, BlockPluginInterface $block): vo if ($block->getPluginId() !== 'local_tasks_block') { return; } - if ($this->hasLocalTasks() && $this->moduleHandler->moduleExists('navigation_top_bar')) { + if ($this->hasLocalTasks()) { $build['#access'] = FALSE; } } -- GitLab From 2cb96393cf68b7dbd5225f2715748436190dbf25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Fri, 21 Feb 2025 07:24:43 +0100 Subject: [PATCH 02/10] Issue #3507866: Mark module as obsolete and self-uninstall it --- .../navigation_top_bar.info.yml | 5 +++-- .../navigation_top_bar.post_update.php | 15 +++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php diff --git a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml index edaabb1e223c..33d8412f98ee 100644 --- a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml +++ b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml @@ -1,8 +1,9 @@ name: Navigation Top Bar type: module -description: 'When enabled, this module provides relevant administrative information and tasks for the current page on a top bar. It is not feature complete nor fully functional so enabling it could lead to possible inconsistencies.' +description: 'Obsolete. All the functionality has been moved to Core.' package: Core (Experimental) -lifecycle: experimental +lifecycle: obsolete +lifecycle_link: 'https://www.drupal.org/docs/core-modules-and-themes/deprecated-and-obsolete#s-understanding-obsolete-extensions' version: VERSION dependencies: - navigation:navigation diff --git a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php new file mode 100644 index 000000000000..cc879460d821 --- /dev/null +++ b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php @@ -0,0 +1,15 @@ +<?php + +/** + * @file + * Post update functions for the Navigation Top Bar module. + */ + +/** + * Self-uninstall the navigation_top_bar module if installed. + */ +function navigation_top_bar_post_update_self_uninstall() { + if (\Drupal::moduleHandler()->moduleExists('navigation_top_bar')) { + \Drupal::service('module_installer')->uninstall(['navigation_top_bar'], FALSE); + } +} -- GitLab From f90589940137dcf12679d9d97f91fcae2072ee65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Fri, 21 Feb 2025 07:45:35 +0100 Subject: [PATCH 03/10] Issue #3507866: Remove module content --- .../src/Hook/NavigationTopBarHooks.php | 34 ------------------- .../tests/src/Functional/GenericTest.php | 14 -------- 2 files changed, 48 deletions(-) delete mode 100644 core/modules/navigation/modules/navigation_top_bar/src/Hook/NavigationTopBarHooks.php delete mode 100644 core/modules/navigation/modules/navigation_top_bar/tests/src/Functional/GenericTest.php diff --git a/core/modules/navigation/modules/navigation_top_bar/src/Hook/NavigationTopBarHooks.php b/core/modules/navigation/modules/navigation_top_bar/src/Hook/NavigationTopBarHooks.php deleted file mode 100644 index 7c76e867bb2d..000000000000 --- a/core/modules/navigation/modules/navigation_top_bar/src/Hook/NavigationTopBarHooks.php +++ /dev/null @@ -1,34 +0,0 @@ -<?php - -namespace Drupal\navigation_top_bar\Hook; - -use Drupal\Core\Routing\RouteMatchInterface; -use Drupal\Core\Hook\Attribute\Hook; -use Drupal\Core\StringTranslation\StringTranslationTrait; - -/** - * Hook implementations for navigation_top_bar. - */ -class NavigationTopBarHooks { - - use StringTranslationTrait; - - /** - * Implements hook_help(). - */ - #[Hook('help')] - public function help($route_name, RouteMatchInterface $route_match): ?string { - switch ($route_name) { - case 'help.page.navigation_top_bar': - $output = '<h2>' . $this->t('About') . '</h2>'; - $output .= '<p>' . $this->t('The Navigation Top Bar module is a Feature Flag module which, when enabled, renders the experimental navigation top bar.') . '</p>'; - $output .= '<p>' . $this->t('The top bar provides relevant administrative information and tasks for the current page. It is not feature complete nor fully functional.') . '</p>'; - $output .= '<p>' . $this->t('Leaving this module enabled can affect both admin and front-end pages layouts and blocks like Primary admin actions, whose content might be moved to te top bar.') . '</p>'; - $output .= '<p>' . $this->t('It is recommended to leave this module off while it is under active development and experimental phase.') . '</p>'; - $output .= '<p>' . $this->t('For more information, see the <a href=":docs">online documentation for the Navigation Top Bar module</a>.', [':docs' => 'https://www.drupal.org/project/navigation']) . '</p>'; - return $output; - } - return NULL; - } - -} diff --git a/core/modules/navigation/modules/navigation_top_bar/tests/src/Functional/GenericTest.php b/core/modules/navigation/modules/navigation_top_bar/tests/src/Functional/GenericTest.php deleted file mode 100644 index 69c4913ab3f6..000000000000 --- a/core/modules/navigation/modules/navigation_top_bar/tests/src/Functional/GenericTest.php +++ /dev/null @@ -1,14 +0,0 @@ -<?php - -declare(strict_types=1); - -namespace Drupal\Tests\navigation_top_bar\Functional; - -use Drupal\Tests\system\Functional\Module\GenericModuleTestBase; - -/** - * Generic module test for navigation_top_bar. - * - * @group navigation_top_bar - */ -class GenericTest extends GenericModuleTestBase {} -- GitLab From cc7970397341ec73a9cd63fc645326d74a1a1d5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Fri, 21 Feb 2025 08:20:27 +0100 Subject: [PATCH 04/10] Issue #3507866: Adjust tests --- .../NavigationShortcutsBlockTest.php | 4 +- .../NavigationTopBarContentModerationTest.php | 2 +- .../NavigationTopBarPageContextTest.php | 1 - .../src/Functional/NavigationTopBarTest.php | 14 ---- .../FunctionalJavascript/PerformanceTest.php | 6 +- .../TopBarPerformanceTest.php | 83 ------------------- 6 files changed, 6 insertions(+), 104 deletions(-) delete mode 100644 core/modules/navigation/tests/src/FunctionalJavascript/TopBarPerformanceTest.php diff --git a/core/modules/navigation/tests/src/Functional/NavigationShortcutsBlockTest.php b/core/modules/navigation/tests/src/Functional/NavigationShortcutsBlockTest.php index d859663d90c6..46c61340af67 100644 --- a/core/modules/navigation/tests/src/Functional/NavigationShortcutsBlockTest.php +++ b/core/modules/navigation/tests/src/Functional/NavigationShortcutsBlockTest.php @@ -115,13 +115,13 @@ public function testNavigationBlock(): void { $this->drupalLogin($site_configuration_user1); $this->verifyDynamicPageCache($test_page_url, 'MISS'); $this->verifyDynamicPageCache($test_page_url, 'HIT'); - $this->assertCacheContexts(['user', 'url.query_args:_wrapper_format', 'session']); + $this->assertCacheContexts(['user', 'url.query_args:_wrapper_format', 'session', 'route']); $this->assertSession()->pageTextContains('Shortcuts'); $this->assertSession()->linkExists('Cron'); $this->drupalLogin($site_configuration_user2); $this->verifyDynamicPageCache($test_page_url, 'HIT'); - $this->assertCacheContexts(['user', 'url.query_args:_wrapper_format', 'session']); + $this->assertCacheContexts(['user', 'url.query_args:_wrapper_format', 'session', 'route']); $this->assertSession()->pageTextContains('Shortcuts'); $this->assertSession()->linkExists('Cron'); diff --git a/core/modules/navigation/tests/src/Functional/NavigationTopBarContentModerationTest.php b/core/modules/navigation/tests/src/Functional/NavigationTopBarContentModerationTest.php index 1d0fa3c4dd5d..b6b2ea8b5469 100644 --- a/core/modules/navigation/tests/src/Functional/NavigationTopBarContentModerationTest.php +++ b/core/modules/navigation/tests/src/Functional/NavigationTopBarContentModerationTest.php @@ -25,7 +25,7 @@ class NavigationTopBarContentModerationTest extends ModerationStateTestBase { protected static $modules = [ 'content_moderation', 'node', - 'navigation_top_bar', + 'navigation', ]; /** diff --git a/core/modules/navigation/tests/src/Functional/NavigationTopBarPageContextTest.php b/core/modules/navigation/tests/src/Functional/NavigationTopBarPageContextTest.php index 800106b1e0f4..51c0ea4dc9f4 100644 --- a/core/modules/navigation/tests/src/Functional/NavigationTopBarPageContextTest.php +++ b/core/modules/navigation/tests/src/Functional/NavigationTopBarPageContextTest.php @@ -26,7 +26,6 @@ class NavigationTopBarPageContextTest extends BrowserTestBase { protected static $modules = [ 'node', 'navigation', - 'navigation_top_bar', 'test_page_test', ]; diff --git a/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php b/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php index e01a86da5121..b55cecbd7072 100644 --- a/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php +++ b/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php @@ -83,20 +83,6 @@ public function testTopBarVisibility(): void { $this->verifyDynamicPageCache($test_page_url, 'HIT'); $this->assertSession()->elementNotExists('xpath', "//div[contains(@class, 'top-bar__content')]/div[contains(@class, 'top-bar__actions')]/button"); - $this->verifyDynamicPageCache($this->node->toUrl(), 'MISS'); - $this->verifyDynamicPageCache($this->node->toUrl(), 'HIT'); - // Top Bar is not visible if the feature flag module is disabled. - $this->assertSession()->elementNotExists('xpath', "//div[contains(@class, 'top-bar__content')]/div[contains(@class, 'top-bar__actions')]/button"); - $this->assertSession()->elementExists('xpath', '//div[@id="block-tabs"]'); - - \Drupal::service('module_installer')->install(['navigation_top_bar']); - - // Test page does not include the Top Bar. - $test_page_url = Url::fromRoute('test_page_test.test_page'); - $this->verifyDynamicPageCache($test_page_url, 'MISS'); - $this->verifyDynamicPageCache($test_page_url, 'HIT'); - $this->assertSession()->elementNotExists('xpath', "//div[contains(@class, 'top-bar__content')]/div[contains(@class, 'top-bar__actions')]/button"); - // Top Bar is visible once the feature flag module is enabled. $this->verifyDynamicPageCache($this->node->toUrl(), 'MISS'); $this->verifyDynamicPageCache($this->node->toUrl(), 'HIT'); diff --git a/core/modules/navigation/tests/src/FunctionalJavascript/PerformanceTest.php b/core/modules/navigation/tests/src/FunctionalJavascript/PerformanceTest.php index 447333cab3f6..296c4365bc34 100644 --- a/core/modules/navigation/tests/src/FunctionalJavascript/PerformanceTest.php +++ b/core/modules/navigation/tests/src/FunctionalJavascript/PerformanceTest.php @@ -73,14 +73,14 @@ public function testLogin(): void { $expected = [ 'QueryCount' => 4, - 'CacheGetCount' => 59, + 'CacheGetCount' => 61, 'CacheGetCountByBin' => [ 'config' => 11, 'data' => 6, 'discovery' => 10, 'bootstrap' => 6, 'dynamic_page_cache' => 2, - 'render' => 23, + 'render' => 25, 'menu' => 1, ], 'CacheSetCount' => 2, @@ -89,7 +89,7 @@ public function testLogin(): void { ], 'CacheDeleteCount' => 0, 'CacheTagChecksumCount' => 3, - 'CacheTagIsValidCount' => 29, + 'CacheTagIsValidCount' => 30, 'CacheTagInvalidationCount' => 0, 'ScriptCount' => 2, 'ScriptBytes' => 215500, diff --git a/core/modules/navigation/tests/src/FunctionalJavascript/TopBarPerformanceTest.php b/core/modules/navigation/tests/src/FunctionalJavascript/TopBarPerformanceTest.php deleted file mode 100644 index 10d5c2943271..000000000000 --- a/core/modules/navigation/tests/src/FunctionalJavascript/TopBarPerformanceTest.php +++ /dev/null @@ -1,83 +0,0 @@ -<?php - -declare(strict_types=1); - -namespace Drupal\Tests\navigation\FunctionalJavascript; - -use Drupal\Core\Cache\Cache; -use Drupal\FunctionalJavascriptTests\PerformanceTestBase; - -/** - * Tests the performance impacts of navigation module. - * - * Stark is used as the default theme so that this test is not Olivero specific. - * - * @group navigation - */ -class TopBarPerformanceTest extends PerformanceTestBase { - - /** - * {@inheritdoc} - */ - protected static $modules = [ - 'navigation', - ]; - - /** - * {@inheritdoc} - */ - protected $defaultTheme = 'stark'; - - /** - * {@inheritdoc} - */ - protected $profile = 'testing'; - - /** - * Tests performance for anonymous users is not affected by the Top Bar. - */ - public function testTopBarPerformance(): void { - // Request the front page, then immediately clear all object caches, so that - // aggregates and image styles are created on disk but otherwise caches are - // empty. - $this->drupalGet(''); - // Give time for big pipe placeholders, asset aggregate requests, and post - // response tasks to finish processing and write to any caches before - // clearing caches again. - sleep(2); - foreach (Cache::getBins() as $bin) { - $bin->deleteAll(); - } - - // Gather performance data before enabling navigation_top_bar. - $performance_data_before_top_bar = $this->collectPerformanceData(function () { - $this->drupalGet(''); - }, 'navigationFrontPageTopBarDisabled'); - - // Install navigation_top_bar module. - \Drupal::service('module_installer')->install(['navigation_top_bar']); - - // Clear caches to prep for another performance data collect. - foreach (Cache::getBins() as $bin) { - $bin->deleteAll(); - } - - // Gather performance data after enabling navigation_top_bar. - $performance_data_after_top_bar = $this->collectPerformanceData(function () { - $this->drupalGet(''); - }, 'navigationFrontPageTopBarEnabled'); - - // Ensure that there is no change to performance metrics from the Top Bar. - // Anonymous users should never see the Top Bar. - $this->assertMetrics([ - 'QueryCount' => $performance_data_before_top_bar->getQueryCount(), - 'CacheGetCount' => $performance_data_before_top_bar->getCacheGetCount(), - 'CacheSetCount' => $performance_data_before_top_bar->getCacheSetCount(), - 'CacheDeleteCount' => $performance_data_before_top_bar->getCacheDeleteCount(), - 'CacheTagChecksumCount' => $performance_data_before_top_bar->getCacheTagChecksumCount(), - 'CacheTagIsValidCount' => $performance_data_before_top_bar->getCacheTagIsValidCount(), - 'CacheTagInvalidationCount' => $performance_data_before_top_bar->getCacheTagInvalidationCount(), - ], $performance_data_after_top_bar); - } - -} -- GitLab From 1b04f752c8ce1a5c222c6e94c3f559c9a38679c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Fri, 21 Feb 2025 08:33:59 +0100 Subject: [PATCH 05/10] Issue #3507866: Fix PHPStan --- .../navigation_top_bar/navigation_top_bar.post_update.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php index cc879460d821..18d6f4b7970f 100644 --- a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php +++ b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php @@ -8,7 +8,7 @@ /** * Self-uninstall the navigation_top_bar module if installed. */ -function navigation_top_bar_post_update_self_uninstall() { +function navigation_top_bar_post_update_self_uninstall(): void { if (\Drupal::moduleHandler()->moduleExists('navigation_top_bar')) { \Drupal::service('module_installer')->uninstall(['navigation_top_bar'], FALSE); } -- GitLab From 74495503ea9d9d941ae42aef8be79e7a04d938de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Fri, 21 Feb 2025 11:45:56 +0100 Subject: [PATCH 06/10] Issue #3507866: Move the post_update hook --- .../navigation_top_bar.post_update.php | 15 --------------- .../modules/navigation/navigation.post_update.php | 11 +++++++++++ 2 files changed, 11 insertions(+), 15 deletions(-) delete mode 100644 core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php diff --git a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php deleted file mode 100644 index 18d6f4b7970f..000000000000 --- a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.post_update.php +++ /dev/null @@ -1,15 +0,0 @@ -<?php - -/** - * @file - * Post update functions for the Navigation Top Bar module. - */ - -/** - * Self-uninstall the navigation_top_bar module if installed. - */ -function navigation_top_bar_post_update_self_uninstall(): void { - if (\Drupal::moduleHandler()->moduleExists('navigation_top_bar')) { - \Drupal::service('module_installer')->uninstall(['navigation_top_bar'], FALSE); - } -} diff --git a/core/modules/navigation/navigation.post_update.php b/core/modules/navigation/navigation.post_update.php index 5ebcb4eea1e1..7df0eed13422 100644 --- a/core/modules/navigation/navigation.post_update.php +++ b/core/modules/navigation/navigation.post_update.php @@ -60,3 +60,14 @@ function navigation_post_update_navigation_user_links_menu(array &$sandbox): voi 'locked' => TRUE, ])->save(); } + +/** + * Uninstall the navigation_top_bar module if installed. + * + * @see https://www.drupal.org/project/drupal/issues/3507866 + */ +function navigation_post_update_uninstall_navigation_top_bar(): void { + if (\Drupal::moduleHandler()->moduleExists('navigation_top_bar')) { + \Drupal::service('module_installer')->uninstall(['navigation_top_bar'], FALSE); + } +} -- GitLab From e31cafb1473cfa959af510613b6770e9ee429b24 Mon Sep 17 00:00:00 2001 From: Matthew Oliveira <m4olivei@gmail.com> Date: Mon, 24 Feb 2025 10:43:50 -0500 Subject: [PATCH 07/10] Issue #3507866: Remove navigation_top_bar config from phpunit.xml --- core/phpunit.xml.dist | 1 - 1 file changed, 1 deletion(-) diff --git a/core/phpunit.xml.dist b/core/phpunit.xml.dist index d50a7a91fffa..acdfc9df2ed5 100644 --- a/core/phpunit.xml.dist +++ b/core/phpunit.xml.dist @@ -103,7 +103,6 @@ <directory>modules/config/tests/config_test/tests/src/Functional</directory> <directory>modules/system/tests/modules/entity_test/tests/src/Functional</directory> <directory>modules/layout_builder/modules/layout_builder_expose_all_field_blocks/tests/src/Functional</directory> - <directory>modules/navigation/modules/navigation_top_bar/tests/src/Functional</directory> <directory>profiles/**/tests/src/Functional</directory> <directory>profiles/demo_umami/modules/demo_umami_content/tests/src/Functional</directory> <directory>recipes/*/tests/src/Functional</directory> -- GitLab From a3a456f37b79799274e5b68ee60fb149df617fa8 Mon Sep 17 00:00:00 2001 From: Matthew Oliveira <m4olivei@gmail.com> Date: Mon, 24 Feb 2025 10:47:52 -0500 Subject: [PATCH 08/10] Issue #3507866: Adjust core capitalization --- .../modules/navigation_top_bar/navigation_top_bar.info.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml index 33d8412f98ee..90e181090818 100644 --- a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml +++ b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml @@ -1,6 +1,6 @@ name: Navigation Top Bar type: module -description: 'Obsolete. All the functionality has been moved to Core.' +description: 'Obsolete. All the functionality has been moved to core.' package: Core (Experimental) lifecycle: obsolete lifecycle_link: 'https://www.drupal.org/docs/core-modules-and-themes/deprecated-and-obsolete#s-understanding-obsolete-extensions' -- GitLab From d33e5251f15eb73e0092dcec4e694cf145209660 Mon Sep 17 00:00:00 2001 From: Matthew Oliveira <m4olivei@gmail.com> Date: Mon, 24 Feb 2025 10:54:53 -0500 Subject: [PATCH 09/10] Issue #3507866: Fix a comment that was referring to non-existant navigation_top_bar --- .../navigation/tests/src/Functional/NavigationTopBarTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php b/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php index b55cecbd7072..e3d7d27333a1 100644 --- a/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php +++ b/core/modules/navigation/tests/src/Functional/NavigationTopBarTest.php @@ -83,7 +83,7 @@ public function testTopBarVisibility(): void { $this->verifyDynamicPageCache($test_page_url, 'HIT'); $this->assertSession()->elementNotExists('xpath', "//div[contains(@class, 'top-bar__content')]/div[contains(@class, 'top-bar__actions')]/button"); - // Top Bar is visible once the feature flag module is enabled. + // Top Bar is visible on node pages. $this->verifyDynamicPageCache($this->node->toUrl(), 'MISS'); $this->verifyDynamicPageCache($this->node->toUrl(), 'HIT'); $this->assertSession()->elementExists('xpath', "(//div[contains(@class, 'top-bar__content')]/div[contains(@class, 'top-bar__actions')]/button)[1]"); -- GitLab From bd8440f759fee5b7832b2568c3db55adcfb536b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20L=C3=B3pez=20//=20plopesc?= <plopesc@gmail.com> Date: Wed, 5 Mar 2025 10:04:55 +0100 Subject: [PATCH 10/10] Issue #3507866: Update module description --- .../modules/navigation_top_bar/navigation_top_bar.info.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml index 90e181090818..988cf9a1bd3c 100644 --- a/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml +++ b/core/modules/navigation/modules/navigation_top_bar/navigation_top_bar.info.yml @@ -1,6 +1,6 @@ name: Navigation Top Bar type: module -description: 'Obsolete. All the functionality has been moved to core.' +description: 'Obsolete. All the functionality has been moved to the navigation module.' package: Core (Experimental) lifecycle: obsolete lifecycle_link: 'https://www.drupal.org/docs/core-modules-and-themes/deprecated-and-obsolete#s-understanding-obsolete-extensions' -- GitLab