RFR: 8231644: TreeTableView Regression: Indentation wrong using Label as column content type [v2]
Marius Hanl
mhanl at openjdk.java.net
Thu Jul 8 22:46:56 UTC 2021
On Thu, 8 Jul 2021 21:24:28 GMT, Marius Hanl <mhanl at openjdk.org> wrote:
>> modules/javafx.controls/src/main/java/javafx/scene/control/skin/TreeTableCellSkin.java line 107:
>>
>>> 105:
>>> 106: @Override
>>> 107: protected void layoutChildren(double x, double y, double w, double h) {
>>
>> This isn't a review, but just a question and a comment.
>>
>> Are there any other callers of `leftLabelPadding` that could be affected by the removal of the override?
>>
>> Btw, you should add `/** {@inheritDoc} */` to the overridden `layoutChildren` method, since it is public API.
>
> good point. I didn't saw any difference but now had a deeper look. Looks like there can be cirumstances, where overriding `layoutChildren ` is not enough.
Alright, I now override every method which did something with leftLabelPadding before.
I will share my notes here:
Note: All method do effectively the same as `leftLabelPadding()` did. (just earlier/later)
- **computePrefHeight** -> `prefWidth()` is always called with -1, so nothing got broken by not overriding this, but we should do it of course to be accurate in case we do one day.
- **computePrefWidth** -> this is needed for auto sizing. I saw that it was slightly off without, so this 100% needed.
- **computeMinWidth** -> the min width of a cell is not used, so nothing got broken by not overriding this but same as in computePrefHeight(), we should comply with the specs.
- **layoutChildren** -> I saw a slight off sizing because I forgot to subtract the indentation to the width. So I added this now as well.
Will also update the PR description.
-------------
PR: https://git.openjdk.java.net/jfx/pull/568
More information about the openjfx-dev
mailing list