The issue is with setting of TabbedPaneScrollLayout() for the option 
JTabbedPane.SCROLL_TAB_LAYOUT as is enabled in the test code
 and not TabbedPaneLayout() as which is the default.

The minimum size fixes itself because the ScrollLayout check fails in 
setTabLayoutPolicy() for the pane. So the issue is with the call to set layout 
manager.
There are only two configurations that the JTabbedPane can exist in of which 
SCROLL_TAB_LAYOUT is one of them.

Fixing the minimum size in AquaTabbedPaneUI will fix it for TabbedPaneLayout() 
only which is the WRAP_TAB_LAYOUT.

Also, I have checked other implementations such as for Metal and Motif and they 
have similar code for doing this process.
Hence, with in-depth analysis, this fix has no other impact apart from this fix.

In case the impact caused by this change has caused some definitive 
regressions, please mention them so they can be addressed. Thank you.

With Regards,
Avik Niyogi

> On 25-Feb-2016, at 6:45 pm, Alexander Potochkin 
> <alexander.potoch...@oracle.com> wrote:
> 
> Hello Avik
> 
> AquaTruncatingTabbedPaneLayout has a lot of code which is specific for the 
> AquaTabbedPaneUI.
> I don't think setting the layout manager from the base class is the right 
> solution here.
> 
> If there is a problem with minimum size it should be fixed inside the 
> AquaTabbedPaneUI
> 
> Thanks
> alexp
> 
> On 2/24/2016 12:07, Avik Niyogi wrote:
>> Hi All,
>> 
>> Kindly review the bug fix for JDK 9.
>> 
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8137169 
>> <https://bugs.openjdk.java.net/browse/JDK-8137169>
>> 
>> Webrev:
>> 
>> http://cr.openjdk.java.net/~aniyogi/8137169/webrev.00/ 
>> <http://cr.openjdk.java.net/%7Eaniyogi/8137169/webrev.00/>
>> 
>> Issue:
>> For Aqua Look&Feel, multiple calls to pane.getMinimumSize().height causes 
>> incremental return of values.
>> 
>> Cause:
>> The impact was caused by a major broken code within AquaTabbedPaneUI.java 
>> for createLayoutManager()
>> 
>> Fix:
>> Major linking calls to super class fix done within createLayoutManager().
>> 
>> With Regards,
>> Avik Niyogi
> 

Reply via email to