On Thu, 17 Jun 2021 12:41:56 GMT, Jeanette Winzenburg <faste...@openjdk.org> 
wrote:

> The issue is about memory leaks and side-effects (like NPEs) when switching 
> skins. 
> 
> Details (copied from issue for convenience):
> 
> memory leak in TextInputControlBehavior:
> - listener accidentally added twice (removed once)
> - keyPad mappings not properly installed/disposed
> 
> memory leak TextFieldBehavior:
> - listeners to scene/focusOwner property not removed,
> 
> memory leak in TextInputControlSkin:
> - event handlers related to inputMethods not removed
> 
> issues in TextFieldSkin:
> - memory leak due to behavior leaking
> - memory leaks due to manually added change/invalidation listeners that are 
> not removed
> - memory leaks due to not removing children with strong references to skin
> - side-effects (f.i. NPEs) due to listeners/bindings that are still active 
> after dispose
> 
> Fix was to properly install/remove those listeners/handlers. Added tests that 
> failed/passed before/after the fix, respectively, also added tests passing 
> before that must pass after the fix.

This pull request has now been integrated.

Changeset: 653e24ba
Author:    Jeanette Winzenburg <faste...@openjdk.org>
URL:       
https://git.openjdk.java.net/jfx/commit/653e24baef01c52ec11efab255bf506ee55e4d2a
Stats:     752 lines in 10 files changed: 686 ins; 38 del; 28 mod

8240506: TextFieldSkin/Behavior: misbehavior on switching skin

Reviewed-by: mhanl, arapte

-------------

PR: https://git.openjdk.java.net/jfx/pull/534

Reply via email to