RFR: 8235491: Tree/TableView: implementation of isSelected(int) violates contract [v10]
Jeanette Winzenburg
fastegal at openjdk.org
Thu Aug 11 12:06:44 UTC 2022
On Wed, 10 Aug 2022 15:33:15 GMT, Andy Goryachev <angorya at openjdk.org> wrote:
>> 1. reword SelectionModel.isSelected(int) javadoc, removing incorrect statement "Is functionally equivalent to calling <code>getSelectedIndices().contains(index)</code>."
>> 2. reimplement TableView.TableViewSelectionModel.isSelected(int) method to return true when at least one cell in *any* column is selected on the given row (was: *all* columns)
>> 3. change selectRowWhenInSingleCellSelectionMode() and selectRowWhenInSingleCellSelectionMode2() in TableViewSelectionModelImplTest to reflect new reality.
>>
>> NOTE: proposed change alters semantics of isSelected(int) method (in the right direction, in my opinion).
>
> Andy Goryachev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 16 additional commits since the last revision:
>
> - Merge remote-tracking branch 'origin/master' into 8235491.isselected
> - 8235491: updated test
> - 8235491: removed unnecessary method
> - 8235491: delegate to super()
> - 8235491: revert clear selection
> - 8235491: whitespace
> - 8235491: additional tests
> - Merge remote-tracking branch 'origin/master' into 8235491.isselected
> - 8235491: javadoc
> - 8235491: tree table view
> - ... and 6 more: https://git.openjdk.org/jfx/compare/fac7b47a...35247bc6
modules/javafx.controls/src/main/java/javafx/scene/control/TreeTableRow.java line 445:
> 443:
> 444: boolean isSelected = getTreeTableView().getSelectionModel().isSelected(index, null);
> 445: if (isSelected() == isSelected) return;
good example of when using the two-param method makes sense - we probably should do the same in TableRow (which does some convoluted ifs for the same result) to keep both as similar as possible. Might be done a new low-priority follow-up issue
-------------
PR: https://git.openjdk.org/jfx/pull/839
More information about the openjfx-dev
mailing list