On Tue, 2 Sep 2025 16:27:14 GMT, Martin Fox <[email protected]> wrote:
>> 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. >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Martin Fox has updated the pull request incrementally with one additional > commit since the last revision: > > Quick fix for a javadoc issue. modules/javafx.controls/src/main/java/javafx/scene/control/MenuBar.java line 186: > 184: * > 185: * @return the common system menus list property > 186: * @since 26 needs to be updated to 28 most likely modules/javafx.controls/src/main/java/javafx/scene/control/MenuBar.java line 217: > 215: private static SimpleObjectProperty<ObservableList<Menu>> > commonSystemMenus; > 216: public static final void setCommonSystemMenus(ObservableList<Menu> > value) { > 217: commonSystemMenusProperty().setValue(value); what is the use case for this? would it make more sense to change to `final commonSystemMenus` and disallow setting the list instance? the application can just `setAll()`. ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1881#discussion_r3508498936 PR Review Comment: https://git.openjdk.org/jfx/pull/1881#discussion_r3508511806
