On Fri, 9 Apr 2021 05:42:37 GMT, Tejpal Rebari <treb...@openjdk.org> wrote:

> Hi All,
> Please review the following fix for jdk17.
> 
> Issue : On MacOS 11 Java Frame and JDialog application is freezing  in Full 
> Screen  when the System Preference -> General -> Prefer Tabs is set to "Full 
> Screen". It is also freezing in normal screen when Prefer Tabs is set to 
> "Always".
> It doesn't freeze when the Prefer tabs is set to "never".
> 
> Fix : The default value of allowsAutomaticWindowTabbing is 0/NO in MacOS 
> prior to bigSur(11)  
> (in the AWTWindow.m file),  so the issue is not seen in mac os 10.13 10.14 
> and 10.15.
> From MacOS 11 onwards  this value is set to 1/YES and the issue is seen.
> This issue can also be reproduced in MacOS 10.15 by setting 
> setAllowsAutomaticWindowTabbing to true in the AWTWindow.m file.
> 
> Fix is to set allowsAutomaticWindowTabbing to No for all the MacOS release 
> staring from 10.12.
> The allowsAutomaticTabbing was introduced in MacOS 10.12 but the default 
> value changed in macos11.
> 
> Test : Added a manual test and tested on MacOS 10.15 and 11.
> All the internal tests run are green.

src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.m line 292:

> 290: 
> 291:     if (@available(macOS 10.12, *)) {
> 292:         [NSWindow setAllowsAutomaticWindowTabbing:NO];

This works as long as you are OK with requiring an Xcode with the 10.12 SDK to 
build (it won't affect the minimum runtime version). I think this is fine, but 
wanted to point that out.

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

PR: https://git.openjdk.java.net/jdk/pull/3407

Reply via email to