Hi Florian,
I would enter a JIRA with the steps to make the problem happen and the
smallest possible example code that shows it.
Thanks,
Steve
On 2014-01-02 5:10 PM, Florian Brunner wrote:
I also tried to add a listener directly to
control.getDockingSplitPaneChildren() in case the issue is with
Bindings.bindContent, but also this listener doesn't get called.
member:
private final ListChangeListener<DockingSplitPaneChildBase>
dockingSplitPaneChildrenListener = new
ListChangeListener<DockingSplitPaneChildBase>() {
@Override
public void onChanged(Change<? extends DockingSplitPaneChildBase>
change) {
System.out.println("Change!");
}
};
...
in constructor:
control.getDockingSplitPaneChildren().addListener(dockingSplitPaneChildrenListener);
-Florian
Am Donnerstag, 2. Januar 2014, 22.51:23 schrieb Florian Brunner:
Hi,
I'm in the process of upgrading Drombler FX to JavaFX 8 and hit another
regression issue: JavaFX 8 doesn't call listeners in my Skin implementation (it
used to work with JavaFX 2.x !)
Here is the Skin implementation:
https://sourceforge.net/p/drombler/drombler-fx/ci/default/tree/drombler-fx-core-docking/src/main/java/org/drombler/fx/core/docking/impl/skin/DockingSplitPaneSkin.java
When I add something to
control.getDockingSplitPaneChildren()
what should trigger the listeners, then with a debugger I can trace the call up
to the WeakListChangeListener where on line 87 the listener is null.
Note that I'm not using a WeakListChangeListener explicitly - JavaFX 8 must
have created this somewhere and for some reason the listener from the Skin got
lost!
I also tried to keep a reference to my listeners as a member variable in the
Skin implementation, but this didn't work either.
I haven't filed an issue yet because I guess there is already a new way how to
solve this.
Note that I would like to solve this first with this "basic" Skin
implementation and not with the new SkinBase class just yet, as I'm not familiar with
that new class yet. One refactoring step at a time. ;-)
-Florian