RFR: [WIP] 8277785: ListView scrollTo jumps to wrong location when CellHeight is changed [v7]
Johan Vos
jvos at openjdk.java.net
Mon May 30 08:10:36 UTC 2022
> When the size of a ListCell is changed and a scrollTo method is invoked without having a layout calculation in between, the old (wrong) size is used to calculcate the total estimate. This happens e.g. when the size is changed in the `updateItem` method.
> This PR will immediately resize the cell and sets the new value in the cache containing the cellsizes.
Johan Vos has updated the pull request incrementally with one additional commit since the last revision:
Precalculate size of cells that are likely going to be used in rendering.
This avoid resizing cells after their position has been laid out, leading
to misalignments.
Relaxed some tests that check on the number of invocations on updateItem.
We heavily use the accumcell for calculating sizes, and that cell is released
every time, leading to a call to updateItem as well (but this call should
not do any CPU intensive work)
-------------
Changes:
- all: https://git.openjdk.java.net/jfx/pull/712/files
- new: https://git.openjdk.java.net/jfx/pull/712/files/c7d722d3..67b351ac
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jfx&pr=712&range=06
- incr: https://webrevs.openjdk.java.net/?repo=jfx&pr=712&range=05-06
Stats: 95 lines in 4 files changed: 65 ins; 18 del; 12 mod
Patch: https://git.openjdk.java.net/jfx/pull/712.diff
Fetch: git fetch https://git.openjdk.java.net/jfx pull/712/head:pull/712
PR: https://git.openjdk.java.net/jfx/pull/712
More information about the openjfx-dev
mailing list