RFR: 6510914: JScrollBar.getMinimumSize() breaks the contract of JComponent.setMinimumSize() [v2]
Phil Race
prr at openjdk.org
Tue Oct 10 22:22:53 UTC 2023
On Thu, 24 Aug 2023 07:46:07 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:
>> javadoc contract for JComponent.setMinimumSize(Dimension) states:
>>
>> "Sets the minimum size of this component to a constant value. Subsequent calls to getMinimumSize will always return this value..."
>>
>> However, JScrollBar overrides getMinimumSize() and breaks this contract - it always returns a minimum size derived from the preferred size even if you have previously called setMinimumSize()
>>
>> Fix is made to check if mnimumSize is set and if so, honour it..
>
> Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision:
>
> - copyright year
> - Fix maximumSize, test
src/java.desktop/share/classes/javax/swing/JScrollBar.java line 765:
> 763: if (isMinimumSizeSet()) {
> 764: return super.getMinimumSize();
> 765: }
This looks like it has potential to cause many compatibility problems.
I think it better to simply update the Jscrollbar spec on these methods to reflect what JScrollbar does.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15325#discussion_r1353494090
More information about the client-libs-dev
mailing list