[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-openjfx-dev
Subject: RFR: 8274061: Tree-/TableRowSkin: misbehavior on switching skin
From: Jeanette Winzenburg <fastegal () openjdk ! java ! net>
Date: 2021-09-24 16:06:23
Message-ID: k776550vHGvC7dyGufux1E1PIUqwjTSZ7LtTbqszE7Q=.aef7ec1b-b5d2-4a94-88f3-3e02d7dd40a1 () github ! com
[Download RAW message or body]
Cleanup of Tree-/TableRowSkin to support switching skins
The misbehavior/s
- memory leaks due to manually registered listeners that were not removed
- side-effects due to listeners still active on old skin (like NPEs)
Fix
- use skin api for all listener registration (for automatic removal in dispose)
- do not install listeners that are not needed (fixedCellSize, same as in fix of \
ListCellSkin [JDK-8246745](https://bugs.openjdk.java.net/browse/JDK-8246745))
Added tests for each listener involved in the fix to guarantee it's still working and \
does not have unwanted side-effects after switching skins.
Note: there are pecularities in row skins (like not updating themselves on property \
changes of its control, throwing NPEs when not added to a VirtualFlow) which are not \
part of this issue but covered in \
[JDK-8274065](https://bugs.openjdk.java.net/browse/JDK-8274065)
-------------
Commit messages:
- 8274061: Tree-/TableRowSkin: misbehavior on switching skin
Changes: https://git.openjdk.java.net/jfx/pull/632/files
Webrev: https://webrevs.openjdk.java.net/?repo=jfx&pr=632&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8274061
Stats: 1005 lines in 8 files changed: 882 ins; 100 del; 23 mod
Patch: https://git.openjdk.java.net/jfx/pull/632.diff
Fetch: git fetch https://git.openjdk.java.net/jfx pull/632/head:pull/632
PR: https://git.openjdk.java.net/jfx/pull/632
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic