Skip to content

Remove navigation menus experimental feature flag#22582

Merged
nbradbury merged 5 commits intotrunkfrom
issue/menus-remove-feature-flag
Feb 11, 2026
Merged

Remove navigation menus experimental feature flag#22582
nbradbury merged 5 commits intotrunkfrom
issue/menus-remove-feature-flag

Conversation

@nbradbury
Copy link
Contributor

@nbradbury nbradbury commented Feb 10, 2026

Description

Partially addresses CMM-1166 by removing the experimental feature flag for navigation menus, making the feature available to all users who have:

  • An application password configured
  • Edit theme options capability

Also adds a BETA badge to the Menus item in the My Site list to indicate the feature is still in beta.

This PR also includes a fix for the experimental features screen which previously wasn't scrollable.

Changes

  • Remove NAV_MENUS from ExperimentalFeatures enum
  • Remove experimental feature check from buildMenusItemIfAvailable()
  • Add showBetaBadge property to ListItem data class
  • Add BETA badge UI to My Site list items (positioned before the label)
  • Use branded primary color for the badge (blue for WordPress, green for Jetpack)

Testing instructions

  1. Log in to a self-hosted site with an application password
  2. Navigate to My Site
  • Verify "Menus" item appears in the site menu
  • Verify BETA badge appears before the "Menus" label
  1. Tap on Menus
  • Verify navigation menus screen opens correctly
  1. Go to Me > Experimental Features, rotate to landscape, and verify the screen is scrollable
Screenshot_20260210_152241

nbradbury and others added 2 commits February 10, 2026 15:09
- Remove NAV_MENUS from ExperimentalFeatures enum
- Enable navigation menus for all users with application password and
  edit theme options capability
- Add BETA badge to Menus item in My Site list
- Add showBetaBadge property to ListItem data class

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@dangermattic
Copy link
Collaborator

dangermattic commented Feb 10, 2026

1 Warning
⚠️ PR is not assigned to a milestone.

Generated by 🚫 Danger

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Feb 10, 2026

App Icon📲 You can test the changes from this Pull Request in WordPress Android by scanning the QR code below to install the corresponding build.

App NameWordPress Android
FlavorJalapeno
Build TypeDebug
Versionpr22582-e8add2c
Build Number1484
Application IDorg.wordpress.android.prealpha
Commite8add2c
Installation URL2ocguhqiu40cg
Note: Google Login is not supported on these builds.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Feb 10, 2026

App Icon📲 You can test the changes from this Pull Request in Jetpack Android by scanning the QR code below to install the corresponding build.

App NameJetpack Android
FlavorJalapeno
Build TypeDebug
Versionpr22582-e8add2c
Build Number1484
Application IDcom.jetpack.android.prealpha
Commite8add2c
Installation URL1bffin96ja0hg
Note: Google Login is not supported on these builds.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@codecov
Copy link

codecov bot commented Feb 10, 2026

Codecov Report

❌ Patch coverage is 33.33333% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 38.18%. Comparing base (dfce3fb) to head (e8add2c).
⚠️ Report is 1 commits behind head on trunk.

Files with missing lines Patch % Lines
...id/ui/mysite/items/listitem/SiteListItemBuilder.kt 0.00% 3 Missing ⚠️
...experimentalfeatures/ExperimentalFeaturesScreen.kt 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##            trunk   #22582      +/-   ##
==========================================
- Coverage   38.18%   38.18%   -0.01%     
==========================================
  Files        2238     2238              
  Lines      111779   111776       -3     
  Branches    15587    15586       -1     
==========================================
- Hits        42680    42677       -3     
  Misses      65558    65558              
  Partials     3541     3541              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Add verticalScroll modifier to the main Column so the screen
scrolls when content overflows on smaller displays.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@nbradbury nbradbury marked this pull request as ready for review February 11, 2026 19:08
@sonarqubecloud
Copy link

Copy link
Contributor

@adalpari adalpari left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great feature! LGTM!
:shipit:

@nbradbury nbradbury enabled auto-merge (squash) February 11, 2026 19:19
@nbradbury nbradbury merged commit 8d17379 into trunk Feb 11, 2026
24 of 27 checks passed
@nbradbury nbradbury deleted the issue/menus-remove-feature-flag branch February 11, 2026 19:38
dcalhoun added a commit that referenced this pull request Feb 20, 2026
Restore the horizontal constraint chain in my_site_item_block.xml that
was broken when adding beta badge support (#22582, #22593). Without the
chain, ConstraintLayout ignored the icon-to-text marginEnd.

Fix quick_link_item.xml spacing after the MaterialButton-to-manual-views
conversion: move icon-to-text gap from marginEnd on the icon (ignored
without an End constraint) to marginStart on the label, restore the
original 8dp horizontal padding, and add vertical padding to match the
MaterialButton's inset+padding behavior.
dcalhoun added a commit that referenced this pull request Feb 20, 2026
* fix: Restore spacing in My Site menu items and quick link items

Restore the horizontal constraint chain in my_site_item_block.xml that
was broken when adding beta badge support (#22582, #22593). Without the
chain, ConstraintLayout ignored the icon-to-text marginEnd.

Fix quick_link_item.xml spacing after the MaterialButton-to-manual-views
conversion: move icon-to-text gap from marginEnd on the icon (ignored
without an End constraint) to marginStart on the label, restore the
original 8dp horizontal padding, and add vertical padding to match the
MaterialButton's inset+padding behavior.

* fix: Announce My Site navigation items as buttons for screen readers

The MaterialButton-to-manual-views conversion lost the button
accessibility role. Set the className to Button via an
AccessibilityDelegateCompat so TalkBack announces these items
as buttons again.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants