<Swing Dev> Review request for JDK-8139213 : Mac OS X Aqua Look and Feel: JOptionPane can truncate the first button.
Alexander Scherbatiy
alexandr.scherbatiy at oracle.com
Wed Jan 20 12:48:33 UTC 2016
On 1/20/2016 3:45 PM, Rajeev Chamyal wrote:
> Hello Alexandr,
>
> Thanks for the review.
> I have updated the webrev as suggested.
> http://cr.openjdk.java.net/~rchamyal/8139213/webrev.01/
The fix looks good to me.
Thanks,
Alexandr.
>
> Regards,
> Rajeev Chamyal
>
> -----Original Message-----
> From: Alexander Scherbatiy
> Sent: 20 January 2016 17:04
> To: Rajeev Chamyal
> Cc: Sergey Bylokhov; Prasanta Sadhukhan; swing-dev at openjdk.java.net
> Subject: Re: Review request for JDK-8139213 : Mac OS X Aqua Look and Feel: JOptionPane can truncate the first button.
>
> On 1/20/2016 8:11 AM, Rajeev Chamyal wrote:
>> Hello Alexandr,
>>
>> Thanks for the review.
>>
>> Yes, we can call minimumLayoutSize(Container) of parent class but in
>> this case also again we need to check if any of the child components
>> are setting preferred size and compare it with the default values.
>>
>> And after this we need to find a delta that needs to be added to the
>> minimum size obtained from the parent class.
>>
>> The current webrev code I feel is much cleaner than getting the size
>> from parent class.
>>
> The parent class also includes preffered sizes. It looks like it is possible to do something like:
> ---------------
> int kButtonLayoutSizeWidth = extraWidth
> + (kOKCancelButtonWidth * numChildren)
> + (numChildren - 1) * padding;
> int kButtonLayoutSizeHeight = extraHeight + kButtonHeight;
>
> Dimension size = super.minimumLayoutSize(c);
> size.width = Math.max(size.width, kButtonLayoutSizeWidth);
> size.height = Math.max(size.height, kButtonLayoutSizeHeight);
> ---------------
>
> Thanks,
> Alexandr.
>
>> Regards,
>>
>> Rajeev Chamyal
>>
>> *From:*Alexander Scherbatiy
>> *Sent:* 19 January 2016 21:00
>> *To:* Rajeev Chamyal; Sergey Bylokhov; Prasanta Sadhukhan;
>> swing-dev at openjdk.java.net
>> *Subject:* Re: Review request for JDK-8139213 : Mac OS X Aqua Look and
>> Feel: JOptionPane can truncate the first button.
>>
>> On 19/01/16 15:48, Rajeev Chamyal wrote:
>>
>> Hello All,
>>
>>
>>
>> Gentle reminder for review.
>>
>>
>>
>> Regards,
>>
>> Rajeev Chamyal
>>
>>
>>
>> -----Original Message-----
>>
>> From: Rajeev Chamyal
>>
>> Sent: 13 January 2016 16:37
>>
>> To: Sergey Bylokhov; Alexander Scherbatiy; Prasanta
>> Sadhukhan;swing-dev at openjdk.java.net
>> <mailto:swing-dev at openjdk.java.net>
>>
>> Subject: Review request for JDK-8139213 : Mac OS X Aqua Look and Feel: JOptionPane can truncate the first button.
>>
>>
>>
>> Hello All,
>>
>>
>>
>> Please review the following fix for Jdk9:
>>
>>
>>
>> Bug :https://bugs.openjdk.java.net/browse/JDK-8139213
>>
>> Webrev :http://cr.openjdk.java.net/~rchamyal/8139213/webrev.00/
>> <http://cr.openjdk.java.net/%7Erchamyal/8139213/webrev.00/>
>>
>>
>>
>> Issue : In Mac OS X Aqua LAF JOptionPane truncates the first button if multiple buttons are added to it.
>>
>>
>>
>> Cause: AquaButtonAreaLayout class is not overriding base class method minimumLayoutSize as a result it is not taking to account the default button width for Aqua LAF.
>>
>> Hence it is calculating incorrect dimensions for JOptionPane which results in truncation of button.
>>
>>
>>
>> Fix: Overriding minimumLayoutSize in AquaButtonAreaLayout to consider default button width and height while calculating minimum size for JOptionPane.
>>
>>
>> Is it possible to call the minimumLayoutSize(Container) from the
>> super class and adjust the returned size to take the default button
>> size into account?
>>
>> Thanks,
>> Alexandr.
>>
>>
>>
>>
>>
>> Regards,
>>
>> Rajeev Chamyal
>>
More information about the swing-dev
mailing list