On Fri, 6 Mar 2026 19:54:10 GMT, Jose Pereda <[email protected]> wrote:

>> This PR adds a fix to prevent a crash on macOS after exiting full screen 
>> mode when a modal dialog is showing 
>> (https://bugs.openjdk.org/browse/JDK-8371370).
>> 
>> At the same time, it prevents non-resizable windows from entering full 
>> screen mode (https://bugs.openjdk.org/browse/JDK-8379315), given that the 
>> changes for both issues were interrelated.
>> 
>> While no tests have been added, manual tests have been run, checking that 
>> the style mask, the window behavior and the standard window buttons state, 
>> remained consistent in different scenarios.
>> 
>> Also, according to 
>> https://developer.apple.com/documentation/appkit/nswindow/showsresizeindicator,
>>  the `showsResizeIndicator` property has been removed.
>
> Jose Pereda has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   fix typo and remove unused property

modules/javafx.graphics/src/main/native-glass/mac/GlassWindow+Java.m line 237:

> 235:             NSWindowCollectionBehavior behavior = [self->nsWindow 
> collectionBehavior];
> 236:             behavior |= NSWindowCollectionBehaviorFullScreenPrimary;
> 237:             [self->nsWindow setCollectionBehavior: behavior];

This is minor but I've never understood the coding conventions in the Mac glass 
code. I have no idea why there's all the references to `self` and why no one 
uses property notation. In any other codebase this line would just be

`nsWindow.collectionBehavior = behavior;`

I wouldn't change anything in this PR since it does follow the prevailing 
conventions but I urge anyone writing new code to at least drop all the `self` 
references.

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

PR Review Comment: https://git.openjdk.org/jfx/pull/2098#discussion_r2907777319

Reply via email to