<AWT Dev> [11] JDK-8195738: scroll poistion in ScrollPane is reset after calling validate()

Shashidhara Veerabhadraiah shashidhara.veerabhadraiah at oracle.com
Fri Feb 23 04:23:50 UTC 2018


Hi Semyon, Thanks for your review comments.

 

Here are those different scroll bar pane modes and their description:

Modifier and Type

Field

Description

static int

HYPERLINK "https://docs.oracle.com/javase/9/docs/api/java/awt/ScrollPane.html#SCROLLBARS_ALWAYS"SCROLLBARS_ALWAYS

Specifies that horizontal/vertical scrollbars should always be shown regardless of the respective sizes of the scrollpane and child.

static int

HYPERLINK "https://docs.oracle.com/javase/9/docs/api/java/awt/ScrollPane.html#SCROLLBARS_AS_NEEDED"SCROLLBARS_AS_NEEDED

Specifies that horizontal/vertical scrollbar should be shown only when the size of the child exceeds the size of the scrollpane in the horizontal/vertical dimension.

static int

HYPERLINK "https://docs.oracle.com/javase/9/docs/api/java/awt/ScrollPane.html#SCROLLBARS_NEVER"SCROLLBARS_NEVER

Specifies that horizontal/vertical scrollbars should never be shown regardless of the respective sizes of the scrollpane and child.

 

Thanks and regards,
Shashi

 

From: Semyon Sadetsky 
Sent: Thursday, February 22, 2018 11:58 PM
To: Shashidhara Veerabhadraiah <shashidhara.veerabhadraiah at oracle.com>; awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> [11] JDK-8195738: scroll poistion in ScrollPane is reset after calling validate()

 

Hi Shashi,

Can you clarify what is the principal difference between SCROLLBARS_NEVER and other scroll policies that requires to avoid updating the scroll geometry according to the inner component size?

--Semyon

On 02/19/2018 11:08 PM, Shashidhara Veerabhadraiah wrote:

Hi All, Please review a code fix for the below bug.

 

Bug: https://bugs.openjdk.java.net/browse/JDK-8195738

 

Webrev: HYPERLINK "http://cr.openjdk.java.net/%7Esveerabhadra/8195738/webrev.00/"http://cr.openjdk.java.net/~sveerabhadra/8195738/webrev.00/

 

Problematic platform: Windows only.

 

Summary: This bug occurs only on windows platform and whereas the behavior is different on Mac/Linux platforms. Now after this fix there is common behavior across the platforms.

The main problem was with resetting the state of the scroll bars even though the scroll bar panes are spawned with SCROLLBARS_NEVER as the scroll bar display policy. This resetting should not occur as the scroll bar display policy makes the 

scroll bar panes invisible. Hence except the setScrollPosition() calls, we don't need to resize/update the scroll bars state upon calling the scroll bars validation if SCROLLBARS_NEVER policy is used as the scroll bars are not displayed.

 

Thanks and regards,
Shashi

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180222/178dda84/attachment-0001.html>


More information about the awt-dev mailing list