[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-openjfx-dev
Subject: Withdrawn: (draf): ChangeListener events are incorrect or misleading when a nested change occurs
From: duke <duke () openjdk ! org>
Date: 2023-07-26 8:10:02
Message-ID: fuRHvxLJykX9GeUqVXDNayN35f1X2OllvvQoBm1HFSw=.09991cc4-59a6-40dd-8a1c-3c25341f75c0 () github ! com
[Download RAW message or body]
On Sun, 17 Jul 2022 20:59:46 GMT, John Hendrikx <jhendrikx@openjdk.org> wrote:
> This contains the following:
> - Nested changes or invalidations using ExpressionHelper are delayed until the \
> current emission completes
> - This fixes odd change events being produced (with incorrect oldValue)
> - Also fixes a bug in ExpressionHelper where a nested change would unlock the \
> listener list early, which could cause a `ConcurrentModificationException` if a \
> nested change was combined with a remove/add listener call
> - A test for ExpressionHelper to verify the new behavior
> - A test for all *Property and *Binding classes that verifies correct listener \
> behavior at the API level (this tests gets 85% coverage on ExpressionHelper on its \
> own, the only thing it is not testing is the locking behavior, which is not \
> relevant at the API level).
> - A fix for `WebColorFieldSkin` which triggered a nested change which used a flag \
> to prevent an event loop (I've changed it now to match how `DoubleFieldSkin` and \
> `IntegerFieldSkin` do it
This pull request has been closed without being integrated.
-------------
PR: https://git.openjdk.org/jfx/pull/837
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic