Hi Sergey,

Please review the modified fix. The current webrev maintains the window 
behaviour after it is shown as per the current implementation. 
canFullScreen is set true in case the window is resizable.

http://cr.openjdk.java.net/~mhalder/8190767/webrev.02/ 
<http://cr.openjdk.java.net/~mhalder/8190767/webrev.02/>

Regards,
Manajit

> On 14-Feb-2018, at 8:29 AM, Sergey Bylokhov <sergey.bylok...@oracle.com> 
> wrote:
> 
> Hi, Manajit.> http://cr.openjdk.java.net/~mhalder/8190767/webrev.01/ 
> <http://cr.openjdk.java.net/~mhalder/8190767/webrev.01/>
> After the window is shown behavior should be the same as in current 
> implementation(resizable windows should have canFullScreen=true, others 
> canFullScreen=false) so you cannot just set it to "true" or "false".
> 
>> The issue is not reproducible in jdk8. >
>> Regards,
>> Manajit
>>> 
>>> On 31-Jan-2018, at 2:40 AM, Sergey Bylokhov <sergey.bylok...@oracle.com 
>>> <mailto: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.
> 
> 
> -- 
> Best regards, Sergey.

Reply via email to