RFR: 8369836: Update HeaderBar API [v13]
Kevin Rushforth
kcr at openjdk.org
Tue Jan 6 21:48:59 UTC 2026
On Sun, 4 Jan 2026 01:45:10 GMT, Michael Strauß <mstrauss at openjdk.org> wrote:
>> The `HeaderBar` control currently has three areas: `leading`, `center`, and `trailing`. Additionally, there's `leftSystemInset` and `rightSystemInset`, which are not RTL adjusted. I've come to the understanding that there is no particularly good reason for this, because every time you would want to use this information for layout purposes, it should also be adjusted for RTL.
>>
>> With this in mind, there are three changes for the `HeaderBar` control:
>> 1. Rename `leading` to `left`, and `trailing` to `right`, which aligns the terminology with `BorderPane`.
>> 2. Adjust `leftSystemInset` and `rightSystemInset` for RTL.
>> 3. Make `leftSystemInset`, `rightSystemInset`, and `minSystemHeight` attached properties for `Stage`.
>>
>> With this change, the `HeaderBar` control is more semantically consistent and easier to use, and the renamed `left` and `right` areas now show its close relationship with `BorderPane`.
>>
>> In addition to that, two new `HeaderDragType` constants are added:
>> * `TRANSPARENT`: when set on a node, excludes the node from draggable-area hit testing
>> * `TRANSPARENT_SUBTREE`: the same, but also applies to the node's subtree
>
> Michael Strauß has updated the pull request incrementally with one additional commit since the last revision:
>
> align Linux/Windows behavior when clicking on resize border
The updated API looks good. There is one typo in the javadoc tags that you will need to fix: a missing `@` before `since` in `rightProperty`.
I'll review and approve the CSR next.
modules/javafx.graphics/src/main/java/javafx/scene/layout/HeaderBar.java line 554:
> 552: *
> 553: * @defaultValue {@code null}
> 554: * since 26
Typo: `since` --> `@since`
-------------
PR Review: https://git.openjdk.org/jfx/pull/1936#pullrequestreview-3632618803
PR Review Comment: https://git.openjdk.org/jfx/pull/1936#discussion_r2666383003
More information about the openjfx-dev
mailing list