On Fri, 20 Mar 2026 15:04:42 GMT, Ziad El Midaoui <[email protected]> wrote:
>> The bug occurs when `showRoot` is set to false on a root with no children, >> the expanded item count drops is 0 causing `isFocused(0)` to return false >> even though `focusedIndex` is still 0. When items are added afterwards the >> `treeItemListener` sees `focusedIndex=0` and incorrectly shifts it to 1 >> placing the focus on second item of the TreeView. >> The fix replaces `isFocused(0)` with `getFocusedIndex() >= 0`, which reads >> the raw stored index. > > Ziad El Midaoui has updated the pull request incrementally with one > additional commit since the last revision: > > Minor test changes In the comments of the ticket, there is also a `Platform.runLater()` call mentioned which indeed looks fishy. Might be a good idea to evaluate and remove as follow up? In general, `Platform.runLater()` is rarely used in `Control` code, it probably should never be used since this pretty much always breaks something (flicker, getter is not returning the expected value immediately, ...). It is rarely used at all (luckily). ------------- PR Comment: https://git.openjdk.org/jfx/pull/2095#issuecomment-4099167969
