JDK-8100859 : Mac: Stage.setTitle has no effect on Mac application name
  • Type: Enhancement
  • Component: javafx
  • Sub-Component: window-toolkit
  • Affected Version: fx2.0
  • Priority: P3
  • Status: Resolved
  • Resolution: Won't Fix
  • Submitted: 2011-05-02
  • Updated: 2015-06-16
  • Resolved: 2011-12-19
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
After setting the title of my application using the Stage.setTitle("MyAppName") method my application is still called "java" (even with an untraditional lowercase 'j', not "Java" as you might think).

This is somewhat confusing to end users for several reasons:

1. On a Mac the application menu bar should always reflect the name of the App - in Firefox for instance, the top left menu is called "Firefox". However my application is not called "MyAppName", but "java" - even after setting the Stage title.
2. When switching between applications using Cmd+tab a Mac will show the icons and names of each app to choose from. However, the user is unable to distinguish between multiple Java apps since they are all called "java".
3. When clicking the top left "java" menu item all Mac apps should show a drop down menu containing an "About" menu item which is named similar to "About Firefox" or "About Google Chrome", however my applications menu item is named "About Glass application" (not even "About java application").

Even if there are other ways to change the menu item name, and the Cmd+tab name of the application (I have yet to find these), I am convinced that quite many newcomers to Java FX will be surprised that  setting the stage title does not ensure proper consistent application naming in all places.

Although this is in no way a show stopper, I suggest you fix this since such deficiencies is what makes users see Java apps as different and less conforming to the OS specific user experience.
Comments
We're not going to use Window title for the App name. The App name should come from the app bundle and can be overridden by -Xdock:name parameter. I have filed RT-18563 to cover the followup issue as well as RT-18564 to cover related cleanup issues.
19-12-2011

Some possibilities for default names, if not set by the developer: a. java (currently used) b. Java c. JFX d. JFX App
15-12-2011

Stage represents Window, so Window.setTitle() should not change the Application name. The current "java" name is simply the name of the "java" process which OS X launches for every Java App. The way to set the JFX App name is to check the Info.plist for the bundled app, then look for -Xdock:name which can override it. In addition we need to do some cleanup here, so that the same name appears in the menu bar, the "About" menu item and the Dock name.
15-12-2011

Also can be set by "-Xdock:name=Title"
12-12-2011

SQE: 1/2 test development
02-12-2011

Looks similar to RT-9822, as the latter is about Stage icon vs. App icon, and this issue is about Stage title vs. App title.
12-08-2011