RFR: 8366568: Allow replacing built in application menu in system menu bar [v2]

Martin Fox mfox at openjdk.org
Tue Sep 2 16:27:14 UTC 2025


> This PR provides an API for replacing the application menu that JavaFX places in the system menu bar on macOS. The application menu is the one next to the Apple menu that is titled with the application's name and contains the Quit menu item. The JavaFX version of this menu has many limitations so this PR allows a developer to simply replace it outright.
> 
> Technically there’s no reason to restrict this to only one menu so the API allows the developer to specify an observable list of Menus known as the common system menus. Like the current application menu the common menus are present for all JavaFX windows and remain present even if all windows lose focus. Any per-window menus provided by a MenuBar with useSystemMenuBar set will appear alongside the common system menus.
> 
> In addition the PR provides some calls that allow a developer to implement the Hide <app name>, Hide Others, and Show All menu items that are expected in the application menu.

Martin Fox has updated the pull request incrementally with one additional commit since the last revision:

  Quick fix for a javadoc issue.

-------------

Changes:
  - all: https://git.openjdk.org/jfx/pull/1881/files
  - new: https://git.openjdk.org/jfx/pull/1881/files/1b946f27..e9346431

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=1881&range=01
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1881&range=00-01

  Stats: 4 lines in 1 file changed: 4 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jfx/pull/1881.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1881/head:pull/1881

PR: https://git.openjdk.org/jfx/pull/1881


More information about the openjfx-dev mailing list