On 07/31/2009 02:19 PM, Artem Ananiev wrote:
Legacy AWT applications are supposed to invoke the validate() method
on the top-level component. After the proposed change the invalidate()
will stop invalidation on the scroll pane, making the subsequent
validate() call a no-op because the top-level component will remain
valid.
Not only is the change backward-incompatible, but it also tends to
leave parts of the component hierarchy invalid. That wasn't important
before, but is important now (and that is the aim of this particular
fix, by the way.)
Since:
a) almost nobody develops pure AWT applications our days, thus making
this change unimportant,
b) this change breaks backward compatibility with existing applications,
I'm against making the AWT ScrollPane a validate root. Please provide
more justification if you strongly feel it is required.
HW/LW mixing has already introduced some backwards incompatibility into
our code - this is why this discussion appeared. Making SctollPane a
To me, the fact that we already managed to break something does not
imply a permission to go further and ruin as much as we can.
validate root is at least consistent with the rest of the code (AWT and
Swing).
It's been ages since the Swing ScrollPane became a validate root. The
question is: does anyone needs/wants to use AWT ScrollPanes in new
applications now? If the answer is 'no', I would like to not break
existing applications.
--
best regards,
Anthony