<Swing Dev> Review Request of 8137169 : [macosx] Incorrect minimal heigh of JTabbedPane with more tabs

Avik Niyogi avik.niyogi at oracle.com
Thu Mar 17 13:17:58 UTC 2016


Hi Alexander,
The issue only applies for ScrollingTabbedPane and hence this fix.

With Regards,
Avik Niyogi

> On 16-Mar-2016, at 4:51 pm, Alexander Scherbatiy <alexandr.scherbatiy at oracle.com> wrote:
> 
> 
> Does the same issue affects the AquaTabbedPaneContrastUI?
> 
> Thanks,
> Alexandr.
> 
> On 14/03/16 09:04, Avik Niyogi wrote:
>> Hi All,
>> A gentle reminder, please review code changes.
>> 
>> With Regards,
>> Avik Niyogi
>>> On 08-Mar-2016, at 9:51 pm, Avik Niyogi < <mailto:avik.niyogi at oracle.com>avik.niyogi at oracle.com <mailto:avik.niyogi at oracle.com>> wrote:
>>> 
>>> Hi All,
>>> 
>>> Please review code changes done as with inputs provided.
>>> http://cr.openjdk.java.net/~aniyogi/8137169/webrev.01/ <http://cr.openjdk.java.net/%7Eaniyogi/8137169/webrev.01/>
>>> 
>>> Also, albeit the title of issue mentioned is as above, the injection of issue occurs because  pane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT); is not honoured.
>>> In the new fix as provided, references to base class layout manager is removed in current solution.
>>> 
>>> With Regards,
>>> Avik Niyogi
>>> 
>>>> On 02-Mar-2016, at 7:50 pm, Alexander Potochkin < <mailto:alexander.potochkin at oracle.com>alexander.potochkin at oracle.com <mailto:alexander.potochkin at oracle.com>> wrote:
>>>> 
>>>> Hello Avik
>>>> 
>>>> Let me make it clear I don't approve the proposed fix
>>>> and ask you to do additional evaluation.
>>>> 
>>>> Every LookAndFeel is different and it doesn't make much sense
>>>> to compare Metal LaF with AquaLaf.
>>>> 
>>>> The AquaLaf mimics the native MacOS controls and therefore look quite different from any other Lafs.
>>>> 
>>>> The bug you are fixing has the following subject 
>>>> "Incorrect minimal heigh of JTabbedPane with more tabs"
>>>> 
>>>> Could you please fix exactly the problem with the minimal heights,
>>>> without changing the UI delegate class.
>>>> 
>>>> Thanks
>>>> alexp
>>>> 
>>>>> Gentle reminder. Please review this fix.
>>>>> 
>>>>>> On 26-Feb-2016, at 10:39 am, Avik Niyogi < <mailto:avik.niyogi at oracle.com>avik.niyogi at oracle.com <mailto:avik.niyogi at oracle.com>> wrote:
>>>>>> 
>>>>>> 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 < <mailto:alexander.potochkin at oracle.com>alexander.potochkin at oracle.com <mailto:alexander.potochkin at 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 <https://bugs.openjdk.java.net/browse/JDK-8137169>
>>>>>>>> 
>>>>>>>> Webrev:
>>>>>>>> 
>>>>>>>>  <http://cr.openjdk.java.net/%7Eaniyogi/8137169/webrev.00/>http://cr.openjdk.java.net/~aniyogi/8137169/webrev.00/ <http://cr.openjdk.java.net/~aniyogi/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
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/swing-dev/attachments/20160317/e86c764a/attachment.html>


More information about the swing-dev mailing list