Hello Alexey

The fix looks good

Thanks
alexp

On 10/9/2014 4:07 PM, Alexey Ivanov wrote:
Hello Swing team,

A small update to the test: I explicitly set look-and-feel to MetalLookAndFeel.

Updated webrev: http://cr.openjdk.java.net/~aivanov/7170310/jdk9/webrev.1/

Thanks,
Alexey.

On 08.10.2014 15:57, Alexey Ivanov wrote:
Hello Swing team,

Could you please review the fix for the bug:
    bug: https://bugs.openjdk.java.net/browse/JDK-7170310
    webrev: http://cr.openjdk.java.net/~aivanov/7170310/jdk9/webrev.0/

Description:
If you add more tabs to JTabbedPane than a frame can fit, scrolling buttons are not enabled, and users have no way to switch to hidden tabs until they click another tab.

The test scenario is to add a new tab and select it right away.

Root cause:
Scrolling is not handled properly in this case because JTabbedPane.addTab invalidated the component. Method setSelectedIndex scrolls the active tab into view but the location of the new added tab is not available yet.

The fix:
Invalidate the view of JViewport to ensure its size is set to its preferred size during validation. Then stateChanged listener ensures the layout is valid before scrolling the tabs view.

I created a new automatic test for this issue.
I ran all JTabbedPane regression tests and they passed.

Thank you in advance,
Alexey.


Reply via email to