<AWT Dev> [11] JDK-8195738: scroll poistion in ScrollPane is reset after calling validate()
semyon.sadetsky at oracle.com
semyon.sadetsky at oracle.com
Fri Feb 23 16:47:02 UTC 2018
On 2/22/18 8:23 PM, Shashidhara Veerabhadraiah wrote:
> 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|
>
>
>
> *SCROLLBARS_ALWAYS
> <https://docs.oracle.com/javase/9/docs/api/java/awt/ScrollPane.html#SCROLLBARS_ALWAYS>*
>
>
>
> Specifies that horizontal/vertical scrollbars should always be shown
> regardless of the respective sizes of the scrollpane and child.
>
> |static int|
>
>
>
> *SCROLLBARS_AS_NEEDED
> <https://docs.oracle.com/javase/9/docs/api/java/awt/ScrollPane.html#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|
>
>
>
> *SCROLLBARS_NEVER
> <https://docs.oracle.com/javase/9/docs/api/java/awt/ScrollPane.html#SCROLLBARS_NEVER>*
>
>
>
> Specifies that horizontal/vertical scrollbars should never be shown
> regardless of the respective sizes of the scrollpane and child.
>
This javadoc, you've copy-pasted here, doesn't explain why in your fix
the notification about changed child size is disabled for
SCROLLBARS_NEVER case.
>
> 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:
> http://cr.openjdk.java.net/~sveerabhadra/8195738/webrev.00/
> <http://cr.openjdk.java.net/%7Esveerabhadra/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/20180223/ff4cc96d/attachment.html>
More information about the awt-dev
mailing list