RFR: 8186188: TableColumHeader: initial auto-size broken if has graphic [v7]
Andy Goryachev
angorya at openjdk.org
Thu Apr 11 21:38:47 UTC 2024
On Wed, 27 Mar 2024 23:20:49 GMT, Marius Hanl <mhanl at openjdk.org> wrote:
>> This PR fixes the issue that the initial column autosizing is wrong under some circumstances.
>> The following things will break the initial autosizing:
>> - Bold Column text (that is where I initially found this problem)
>> - Another font / font size
>> - Graphic
>> - Graphic Content Display (which can be styled via CSS)
>>
>> The reason is actually quite simple: The CSS is not (yet) applied initially, we therefore ALWAYS take the default font into account + the graphic is not yet layouted as well.
>>
>> ~It was not so easy to write tests for this, also for me the `test_resizeColumnToFitContentHeader` is always failing locally. I don't know what happens here, but he seems to not find a (Stub?) `Font` for me.~
>> **EDIT: Found out the cause and fixed it. I will check if I can write more tests since it works now. :)**
>>
>> The test I wrote now is checking if the css is applied after we triggered the autosize, which is what we would expect here since we measure text.
>>
>> I also copied the `TableColumnHeaderTest` and rewrote the tests for `TreeTableView` as well, so we can catch any errors here as well since they both use different code (although it is technically the same - C&P errors can happen very easy).
>
> Marius Hanl has updated the pull request incrementally with one additional commit since the last revision:
>
> use snapped insets
Works as expected with the code in the ticket, no issues found with the monkey tester.
Thanks!
-------------
Marked as reviewed by angorya (Reviewer).
PR Review: https://git.openjdk.org/jfx/pull/1405#pullrequestreview-1995527604
More information about the openjfx-dev
mailing list