Correcting the JDK version to be reviewed for to JDK 11.
> On 29-Jan-2018, at 6:09 PM, Manajit Halder <manajit.hal...@oracle.com> wrote: > > Hi All, > > Kindly review the fix for JDK11. > > Bug: > https://bugs.openjdk.java.net/browse/JDK-8190767 > <https://bugs.openjdk.java.net/browse/JDK-8190767> > > Webrev: > http://cr.openjdk.java.net/~mhalder/8190767/webrev.00/ > <http://cr.openjdk.java.net/~mhalder/8190767/webrev.00/> > > Problem: > In this problem two unrelated windows are created (first window and > second window). If the second window is created when the first window is in > fullscreen then the second window will automatically be created in fullscreen > mode. This is the default behaviour with Cocoa windows. The second window > receives windowWillEnterFullScreen notification when the first window is in > fullscreen. windowWillEnterFullScreen notification is system generated > notification and there is no way to prevent it. > > Above conclusion was made after debugging the issue to find out if there is > any way to prevent the windowWillEnterFullScreen notification and also to > find out if it generated due to some existing java (generic and native) code. > > I wrote a simple Mac OS X application with 2 windows and observed the same > behaviour. The second window is created in fullscreen mode if it is created > when the first window is in fullscreen. Whereas the second window is > displayed normal if the first window is in normal mode (not in fullscreen > mode). The only way found to prevent the second window going to fullscreen is > don’t set this behaviour for the second window. > > Fix: > The behaviour is normal on Mac OS. But if we want to prevent the second > (all windows except the primary window) window to automatically created in > fullscreen mode then the following fix can be applicable. > > By default all the Frames are set the WINDOW_FULLSCREENABLE property and by > default all frames receives fullscreen event if the first frame is in > fullscreen when it is created. Due to this setting the second frame which is > created on button click goes to fullscreen on creation automatically. Mac OS > fullscreen event notifications are received in case the first frame is in > fullscreen and WINDOW_FULLSCREENABLE set for the second frame. > > Only the first frame should have the WINDOW_FULLSCREENABLE property set. The > frames created in this case were ownerless windows as mentioned earlier. > Therefore it is not possible to find out the owner of the current frame, it > is null for all the frames created. Hence the fix is if the current frame is > the first frame then set the property otherwise don’t set the property > WINDOW_FULLSCREENABLE. > > Regards, > Manajit