Commit e9c3f35f2f for wordpress.org

commit e9c3f35f2fb27727ce0815d6ac6caa32623b3c08
Author: westonruter <westonruter@git.wordpress.org>
Date:   Fri Sep 25 02:14:48 2026 +0000

    Twenty Twenty: Hide toggle buttons when JS is disabled.

    Without JavaScript, the mobile search and menu toggle buttons do nothing, so they now get the existing `hide-no-js` class, as the toggles in the `.header-toggles` container for larger screens already do. On larger screens, submenus are also now shown with `:focus-within` when JavaScript is unavailable, so they become visible when tabbing through the menu links with the keyboard.

    Developed in https://github.com/WordPress/wordpress-develop/pull/13716.
    Follow-up to r46271.

    Props sabernhardt.
    See #50182.
    Fixes #66174.

    Built from https://develop.svn.wordpress.org/trunk@63928


    git-svn-id: http://core.svn.wordpress.org/trunk@63094 1a063a9b-81f0-0310-95a4-ce76da25c4cd

diff --git a/wp-content/themes/twentytwenty/header.php b/wp-content/themes/twentytwenty/header.php
index 26f63a70ea..960259afca 100644
--- a/wp-content/themes/twentytwenty/header.php
+++ b/wp-content/themes/twentytwenty/header.php
@@ -45,7 +45,7 @@

 						?>

-						<button class="toggle search-toggle mobile-search-toggle" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false">
+						<button class="toggle search-toggle mobile-search-toggle hide-no-js" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false">
 							<span class="toggle-inner">
 								<span class="toggle-icon">
 									<?php twentytwenty_the_theme_svg( 'search' ); ?>
@@ -68,7 +68,7 @@

 					</div><!-- .header-titles -->

-					<button class="toggle nav-toggle mobile-nav-toggle" data-toggle-target=".menu-modal"  data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle">
+					<button class="toggle nav-toggle mobile-nav-toggle hide-no-js" data-toggle-target=".menu-modal"  data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle">
 						<span class="toggle-inner">
 							<span class="toggle-icon">
 								<?php twentytwenty_the_theme_svg( 'ellipsis' ); ?>
diff --git a/wp-content/themes/twentytwenty/style-rtl.css b/wp-content/themes/twentytwenty/style-rtl.css
index 671b9ca52a..0abe0a0d49 100644
--- a/wp-content/themes/twentytwenty/style-rtl.css
+++ b/wp-content/themes/twentytwenty/style-rtl.css
@@ -1683,7 +1683,8 @@ ul.primary-menu {

 .primary-menu li.menu-item-has-children:hover > ul,
 .primary-menu li.menu-item-has-children:focus > ul,
-.primary-menu li.menu-item-has-children.focus > ul {
+.primary-menu li.menu-item-has-children.focus > ul,
+.no-js .primary-menu li.menu-item-has-children > ul:focus-within {
 	left: 0;
 	opacity: 1;
 	transform: translateY(0);
@@ -1738,7 +1739,8 @@ ul.primary-menu {

 .primary-menu ul li.menu-item-has-children:hover > ul,
 .primary-menu ul li.menu-item-has-children:focus > ul,
-.primary-menu ul li.menu-item-has-children.focus > ul {
+.primary-menu ul li.menu-item-has-children.focus > ul,
+.no-js .primary-menu ul li.menu-item-has-children > ul:focus-within {
 	left: calc(100% + 2rem);
 }

diff --git a/wp-content/themes/twentytwenty/style.css b/wp-content/themes/twentytwenty/style.css
index 174bd0056c..24ce915d1d 100644
--- a/wp-content/themes/twentytwenty/style.css
+++ b/wp-content/themes/twentytwenty/style.css
@@ -1689,7 +1689,8 @@ ul.primary-menu {

 .primary-menu li.menu-item-has-children:hover > ul,
 .primary-menu li.menu-item-has-children:focus > ul,
-.primary-menu li.menu-item-has-children.focus > ul {
+.primary-menu li.menu-item-has-children.focus > ul,
+.no-js .primary-menu li.menu-item-has-children > ul:focus-within {
 	right: 0;
 	opacity: 1;
 	transform: translateY(0);
@@ -1744,7 +1745,8 @@ ul.primary-menu {

 .primary-menu ul li.menu-item-has-children:hover > ul,
 .primary-menu ul li.menu-item-has-children:focus > ul,
-.primary-menu ul li.menu-item-has-children.focus > ul {
+.primary-menu ul li.menu-item-has-children.focus > ul,
+.no-js .primary-menu ul li.menu-item-has-children > ul:focus-within {
 	right: calc(100% + 2rem);
 }

diff --git a/wp-includes/version.php b/wp-includes/version.php
index ff4a3aca86..b296dc4789 100644
--- a/wp-includes/version.php
+++ b/wp-includes/version.php
@@ -16,7 +16,7 @@
  *
  * @global string $wp_version
  */
-$wp_version = '7.2-alpha-63927';
+$wp_version = '7.2-alpha-63928';

 /**
  * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.