Disabling JavaFX minimise/maximise/etc buttons

Anthony Petrov anthony.petrov at oracle.com
Mon Jul 22 10:17:39 PDT 2013

Hi Artem,

Do you propose to add another StageStyle - namely, a DIALOG? Note that 
styles cannot be combined in a mask, meaning that developers won't be 
able to create e.g. transparent dialogs, or utility dialogs.

Generally, I like the idea of defining the purpose of a window and 
letting the OS/GUI toolkit decide what works best for it, but I'm not 
sure if we can apply it for this particular use case. Also, I think that 
ability to disable maximization/minimization of a window might be useful 
for purposes other than just displaying dialogs.

BTW, isn't the setResizable(false) a good approximation for our 
requirements? You can still minimize such a window, but I think this is 
reasonable. E.g. OS X will minimize both the dialog and its owner 
window, allowing a user to perform other tasks unrelated to the dialog 
and windows it blocks. Why do we want to disable minimization?

best regards,

On 07/22/2013 07:20 PM, Artem Ananiev wrote:
> On 7/22/2013 11:14 AM, Pavel Safrata wrote:
>> Hi Jonathan,
>> I believe this has been neither requested nor discussed so far. I don't
>> see why this couldn't be added, it just might have to be a conditional
>> feature, we'll have to check. Feel free to file a feature request.
> Some native platforms (mostly, X window managers) don't provide direct
> APIs to enable/disable certain window decoration buttons. A library or
> an application may provides some hints, which may or may not be
> respected by WM.
> I like what we have right now, StageStyle approach. Application defines
> the purpose of the window and let the platform decide, what are
> available actions for it.
> Thanks,
> Artem
>> Regards,
>> Pavel
>> On 21.7.2013 4:44, Jonathan Giles wrote:
>>> Hi all,
>>> For once this is a request for more information from another JavaFX
>>> team, rather than a review request, etc! :-)
>>> I'm keen to see support in JavaFX Stage / Window classes for an API
>>> that would allow for the minimize / maximize / full screen / etc
>>> buttons to be disabled. I'm aware of the StageStyle.UTLITY option
>>> (which does disable the minimize button), but sometimes you don't want
>>> a utility stage style, but you do want to prevent minimizing a stage.
>>> My particular use case is dialogs - you can see a discussion of the
>>> issue at [1].
>>> For example, I note that Stage has an iconfied property to represent
>>> whether the stage is minimized, but no property to specify whether the
>>> stage should be allowed to be iconified (setIconifiable(boolean),
>>> boolean isIconifiable(), for example). Is there a reason for this or
>>> just that this API hasn't been required yet?
>>> In short, I would love API to allow me to specify whether a stage can
>>> be minimised, maximised and made full screen, and for this to follow
>>> through to the buttons available in the native titlebar area of the
>>> stage. Does such an API exist, is there a valid reason why it doesn't,
>>> or should I file a jira to request such API?
>>> [1]
>>> https://bitbucket.org/controlsfx/controlsfx/issue/49/dialogs-should-use-native-title-bars
>>> Thanks!
>>> -- Jonathan

More information about the openjfx-dev mailing list