RFR: 8087673: [TableView] TableView and TreeTableView menu button overlaps columns when using a constrained resize policy.

Andy Goryachev angorya at openjdk.org
Mon Aug 29 16:56:18 UTC 2022


On Mon, 29 Aug 2022 12:56:20 GMT, Kevin Rushforth <kcr at openjdk.org> wrote:

>> The corner region is currently laid out with this assumption:
>> 
>>         // position the top-right rectangle (which sits above the scrollbar)
>> 
>> However, the vertical scrollbar is not always visible. Therefore, when that is the case, the corner region is laid out on top of the table column headers, overlapping any of their graphic or text content. In case of the last visible column header, it is not always possible to scroll horizontally to see the full content, either because of a constrained resize policy or because there is no more space left after the last column.
>> 
>> This PR fixes this issue by considering as padding for the last visible column header the presence of the corner region over it, only when the vertical scrollbar is not visible and the corner region is.
>> 
>> A couple of tests have been added to both TableViewTest and TreeTableViewTest.
>> 
>> Test 1: Before and after the changes :
>> 
>> <img width="312" alt="image" src="https://user-images.githubusercontent.com/2043230/187190928-efc29e38-8de2-4daf-8eff-a218d6fae181.png">
>> <img width="312" alt="image" src="https://user-images.githubusercontent.com/2043230/187190991-deaa88b3-2f52-48bc-b3ec-107a5151f7b5.png">
>> 
>> Test 2:  Before (sort arrow is there, but not visible) and after the changes:
>> <img width="412" alt="image" src="https://user-images.githubusercontent.com/2043230/187191310-fb348d8c-84fc-4254-a1a5-91811bf09b79.png">
>> <img width="412" alt="image" src="https://user-images.githubusercontent.com/2043230/187191358-0d4937cb-b3b4-4530-9489-ff8cbf0c8443.png">
>
> @aghaisas @andy-goryachev-oracle Can you take a look at this?

will do, @kevinrushforth

-------------

PR: https://git.openjdk.org/jfx/pull/886


More information about the openjfx-dev mailing list