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
> 
> 

Reply via email to