On Mon, 27 Mar 2023 14:36:45 GMT, John Hendrikx <jhendr...@openjdk.org> wrote:
>> Makes `Subscription` public (removing some of its methods that are >> unnecessary), and adds methods that can provide `Subscription`s in >> `ObservableValue`. > > John Hendrikx has updated the pull request incrementally with one additional > commit since the last revision: > > Move Subscription method for invalidations to Observable > > - moved Subscription class to the Observable package modules/javafx.base/src/main/java/javafx/beans/Observable.java line 107: > 105: * @since 21 > 106: */ > 107: default Subscription invalidations(Runnable subscriber) { I think re-using `InvalidationListener` may fit better into the existing JavaFX API: interface Observable { Subscription subscribe(InvalidationListener); } The method can then be overloaded for `ChangeListener`, `ListChangeListener`, `SetChangeListener`, and `MapChangeListener` as well. Doing so allows users to use the same functional interfaces they've used before with the `addListener`/`removeListener` APIs. As an added bonus, we don't need to allocate a wrapper for the listeners. ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1069#discussion_r1162007648