Hi Sergey,

Thank you for the review comment. I have changed the fix as per your comment. 
Please review the webvrev.
http://cr.openjdk.java.net/~mhalder/8190767/webrev.01/ 
<http://cr.openjdk.java.net/~mhalder/8190767/webrev.01/>

The issue is not reproducible in jdk8.

Regards,
Manajit
 
> 

> On 31-Jan-2018, at 2:40 AM, Sergey Bylokhov <sergey.bylok...@oracle.com> 
> wrote:
> 
> Hi, Manajit.
> Did you check that it works properly in jdk8?
> 
> I guess we need to set "WINDOW_FULLSCREENABLE" after we show the window for 
> the first time, with one exception if the window is MAXIMIZED_BOTH.
> 
> On 29/01/2018 04:39, Manajit Halder wrote:
>> Hi All,
>> Kindly review the fix for JDK10.
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8190767
>> Webrev:
>> 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
> 
> 
> -- 
> Best regards, Sergey.

Reply via email to