Hi Prasanta, I have updated the issue with MAXIMIZED_BOTH (frame state set to MAXIMIZED_BOTH using setExtendedState). About the anomalies found by you, I have updated inline and also I think there is no need to create a separate issue as the behaviours are system defined in Mac and as expected.
Regards, Manajit > On 23-Nov-2018, at 11:24 AM, Prasanta Sadhukhan > <prasanta.sadhuk...@oracle.com> wrote: > > I see. Can you tell me if you saw this problem in any of the existing > app,demo as I do not see anything in SwingSet2 that is getting solved by this > fix? > > Then, I guess we need to create new bug for this dissimilar behaviour in > SwingSet2 in windows and mac (I was hoping this fix will solve this anomalies > between windows/mac as is mentioned in bug subject) [maybe you should mention > MAXIMIZED_BOTH state in the subject too] > 1. Windows10, I see when I create a new Internal Frame with resizable and > maximizable set, it is allowing me to resize the window . In mac, it is not > > In Mac also you can resize the window by dragging the right bottom corner of the window. > 2. Windows10, the internalframe can be maximized by double clicking on title > bar. In mac, it is not.. > In Mac the behaviour of “double click on title bar” is system defined and can be set by setting “System preference -> Dock -> Double-click a window’s title bar to”. > I see you have added some double click event handling. I guess that code > is not helping to solve this issue. > Code is added to keep double click behaviour intact, otherwise the window won’t resize on double click. > 3. In JFileChooser Demo, the dialog is not maximizable in windows10. In mac, > it is maximizable and it is allowing me to resize even though it is maximised. > In Mac a maximized window can be resized but fullscreen window can’t be resized. > Regards > Prasanta > On 22-Nov-18 6:05 PM, Manajit Halder wrote: >> Hi Prasanta, >> >> Please find my answer inline to your comments: >> >> Regards, >> Manajit >> >>> On 22-Nov-2018, at 12:03 PM, Prasanta Sadhukhan >>> <prasanta.sadhuk...@oracle.com <mailto:prasanta.sadhuk...@oracle.com>> >>> wrote: >>> >>> Hi Manajit, >>> I see in SwingSet2's InternalFrames Demo, when we create a new Frame with >>> resizable and maximizable set and I maximize the window, then I am not able >>> to resize the frame even without your fix. I thought it will allow me to >>> resize without your fix, which is the bug you are trying to fix, right? >> >> The problem is about resizing Frame with state MAXIMIZED_BOTH and this >> state is set using setExtendedState. If I am not wrong MAXIMIZED_BOTH is not >> used InternalFrameDemo.java. Without my fix a Frame with setExtendedState >> set to MAXIMIZED_BOTH will resize if Frame is resizable on Mac. >> >> >>> Also, in Windows10, I see when I create a new Frame with resizable and >>> maximizable set, it is allowing me to resize the window >>> but in mac, it is now allowing me to resize with/without your fix. >> >> Was the Frame extendedState set to MAXIMIZED_BOTH in this case? The >> attached test case with the fix doesn’t allow the Frame to resize on Window >> and Ubuntu. >>> >>> Regards >>> Prasanta >>> On 13-Nov-18 2:07 PM, Manajit Halder wrote: >>>> Hi All, >>>> Gentle remainder. Please review this fix. >>>> >>>> Regards, >>>> Manajit >>>> >>>> On 08/10/18 10:27 AM, Krishna Addepalli wrote: >>>>> Looks fine. >>>>> >>>>> Krishna >>>>> >>>>> From: Manajit Halder >>>>> Sent: Thursday, October 4, 2018 6:01 PM >>>>> To: Krishna Addepalli <krishna.addepa...@oracle.com> >>>>> <mailto:krishna.addepa...@oracle.com>; awt-dev@openjdk.java.net >>>>> <mailto:awt-dev@openjdk.java.net> >>>>> Subject: Re: <AWT Dev> <AWT dev>[12] Review request for JDK-8209123: >>>>> [Macosx] Maximized frame is resizable on Mac but not on Windows and Ubuntu >>>>> >>>>> Hi Krishna, >>>>> >>>>> Thanks for your review comments. Answers are updated inline to your >>>>> queries. >>>>> >>>>> Please review the modified webrev: >>>>> http://cr.openjdk.java.net/~mhalder/8209123/webrev.01/ >>>>> <http://cr.openjdk.java.net/%7Emhalder/8209123/webrev.01/> >>>>> Thanks, >>>>> Manajit >>>>> >>>>> >>>>> >>>>> On 04/10/18 8:13 AM, Krishna Addepalli wrote: >>>>> Hi Manajit, >>>>> >>>>> I have some questions which need to be answered: >>>>> 1. You have same piece of code repeated in “setWindowState” and in >>>>> “setVisible” functions, which tests if the frame is resizable flag is >>>>> changed and sets the state to false. Is it not true that setWindowState >>>>> will be called before setVisible, and if so, then why do you need to >>>>> check twice? >>>>> The code has to be repeated at places where window state is changing. >>>>> Both the methods setWindowState and setVisible calls methods maximize() >>>>> and unmaximize() where window state is changing to a new state. >>>>> >>>>> 2. In the deliverDoubleClickOnTitleBar() function, you may want to >>>>> include a note which describes why you are temporarily enabling the >>>>> resizable flag, and posting a native event, and then enabling the flag. >>>>> Added comment. >>>>> >>>>> 3. At line 825, you could initialize windowResizable like this: >>>>> “resizable && !isMaximizedBoth()”. >>>>> Changed code as per the comment. >>>>> >>>>> >>>>> Thanks, >>>>> Krishna >>>>> >>>>> >>>>> From: Manajit Halder >>>>> Sent: Tuesday, September 25, 2018 3:23 PM >>>>> To: Krishna Addepalli <krishna.addepa...@oracle.com >>>>> <mailto:krishna.addepa...@oracle.com>> >>>>> Subject: Re: <AWT Dev> <AWT dev>[12] Review request for JDK-8209123: >>>>> [Macosx] Maximized frame is resizable on Mac but not on Windows and Ubuntu >>>>> >>>>> Hi Krishna, >>>>> >>>>> Could you please review my fix. >>>>> >>>>> Regards, >>>>> Manajit >>>>> >>>>> >>>>> On 21/09/18 5:07 PM, Manajit Halder wrote: >>>>> Hi All, >>>>> >>>>> Please review the fix for JDK12. >>>>> >>>>> >>>>> >>>>> Bug: >>>>> https://bugs.openjdk.java.net/browse/JDK-8209123 >>>>> <https://bugs.openjdk.java.net/browse/JDK-8209123> >>>>> >>>>> Webrev: >>>>> >>>>> http://cr.openjdk.java.net/~mhalder/8209123/webrev.00/ >>>>> <http://cr.openjdk.java.net/%7Emhalder/8209123/webrev.00/> >>>>> Fix: >>>>> >>>>> Resizibility of Frame with state MAXIMIZED_BOTH is set to false when >>>>> Frame is resized and when Frame state is set. Resizibility of Frame in >>>>> other states (NORMAL and ICONIFIED) is changed if the previous state of >>>>> the frame was MAXIMIZED_BOTH otherwise it is not changed. >>>>> >>>>> Changes in method setResizable() >>>>> 1) if setResizable passed true, then check if frame is in MAXIMIZED_BOTH >>>>> state, if so then set setResizable to false, otherwise set to true. >>>>> 2) if setResizable passed false, then set false without checking the >>>>> frame MAXIMIZED_BOTH state. >>>>> >>>>> Changes done in method setVisible and setWindowState where Frame state is >>>>> set: >>>>> 1) Before setting any state check if resizibility was changed to >>>>> MAXIMIZED_BOTH earlier, if so then set resizibility to false. >>>>> 2) When Frame state is set to MAXIMIZED_BOTH then set resizibility to >>>>> false. >>>>> >>>>> JCK and Jtreg (open and close) tests executed with the change: >>>>> 1) All automated AWT and Swing tests. >>>>> 2) All manual AWT and Swing tests related to Frame, Window, JFrame and >>>>> JWindow. >>>>> >>>>> >>>>> Regards, >>>>> >>>>> Manajit >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>> >>> >> >