Code Review Request For RT-39856: Layout Regression - bad row height

2015-04-28 Thread Chien Yang

Hi Kevin,

Please review the proposed fix.

JIRA: https://javafx-jira.kenai.com/browse/RT-39856

Thanks,
- Chien


hg: openjfx/8u-dev/rt: RT-37421: [TreeView] TreeView layout regression

2014-06-11 Thread hang . vo
Changeset: fdcebfd4841f
Author:jgiles
Date:  2014-06-12 11:02 +1200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/fdcebfd4841f

RT-37421: [TreeView] TreeView layout regression

! 
modules/controls/src/main/java/com/sun/javafx/scene/control/skin/VirtualFlow.java
! modules/controls/src/test/java/javafx/scene/control/TableViewTest.java



Re: Layout regression

2014-05-23 Thread Stephen F Northover
Application code only runs on the app thread.  Setting the uncaught 
exception handler should work for you.


Steve

On 2014-05-23 8:33 AM, ngalarn...@abinitio.com wrote:

How can we be notified of exceptions like these programmatically?

When my code is on the call stack, I can catch the exception
programmatically.

In this stack trace, only JavaFX code is there, but I still want to know
that something bad happened.

For the case of the JavaFX Application Thread, I guess I could do a
Platform.runLater & in that code call

 Thread.currentThread().setUncaughtExceptionHandler(myHandler)  //
ugh! Do I need to save away the previous one & chain to it?

Is that the best way for this thread?

What about JavaFX's other threads? Does application code ever run on those
threads?

How can I know that something went wrong on those threads? Even if my code
never runs there, I still want an automated way to know if something went
wrong.


Thanks,

Neil




From:   Scott Palmer 
To: "openjfx-dev@openjdk.java.net" ,
Date:   05/22/2014 03:56 PM
Subject:    Re: Layout regression
Sent by:"openjfx-dev" 



This appears to be a bug introduced in JavaFX 8
I have filed https://javafx-jira.kenai.com/browse/RT-37252 and will
work on a test case.

Scott

On Thu, May 22, 2014 at 3:45 PM, Scott Palmer  wrote:

I'm investigating an issue with my application where things are
working fine running with JavaFX 2.2 on 7u55, but I have a particular
case where 8u5 is throwing the following exception during layout:

Exception in thread "JavaFX Application Thread"

java.lang.NullPointerException

at javafx.scene.layout.GridPane.computeMinHeights(GridPane.java:1450)
at javafx.scene.layout.GridPane.computeMinHeight(GridPane.java:1224)
at javafx.scene.Parent.minHeight(Parent.java:946)
at javafx.scene.layout.Region.minHeight(Region.java:1404)
at

javafx.scene.layout.Region.computeChildMinAreaHeight(Region.java:1700)

at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1981)
at javafx.scene.layout.Region.computeMaxMinAreaHeight(Region.java:1854)
at javafx.scene.layout.StackPane.computeMinHeight(StackPane.java:293)
at javafx.scene.Parent.minHeight(Parent.java:946)
at javafx.scene.layout.Region.minHeight(Region.java:1404)
at

javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)

at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1982)
at javafx.scene.layout.Region.computeMaxPrefAreaHeight(Region.java:1884)
at javafx.scene.layout.StackPane.computePrefHeight(StackPane.java:310)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at

com.sun.javafx.scene.control.skin.TitledPaneSkin.computePrefHeight(TitledPaneSkin.java:249)

at javafx.scene.control.Control.computePrefHeight(Control.java:543)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at

javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)

at javafx.scene.layout.GridPane.computePrefHeights(GridPane.java:1407)
at javafx.scene.layout.GridPane.computePrefHeight(GridPane.java:1242)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at

com.sun.javafx.scene.control.skin.ScrollPaneSkin.computeScrollNodeSize(ScrollPaneSkin.java:916)

at

com.sun.javafx.scene.control.skin.ScrollPaneSkin.layoutChildren(ScrollPaneSkin.java:791)

at javafx.scene.control.Control.layoutChildren(Control.java:574)
at javafx.scene.Parent.layout(Parent.java:1076)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Scene.doLayoutPass(Scene.java:576)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2386)
at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:321)
at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:319)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:319)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:348)
at

com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:479)

at

com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:460)

at

com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:327)

at

com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)

at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at

com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39)

Re: Layout regression

2014-05-23 Thread ngalarneau
How can we be notified of exceptions like these programmatically?

When my code is on the call stack, I can catch the exception 
programmatically.

In this stack trace, only JavaFX code is there, but I still want to know 
that something bad happened.

For the case of the JavaFX Application Thread, I guess I could do a 
Platform.runLater & in that code call

Thread.currentThread().setUncaughtExceptionHandler(myHandler)  // 
ugh! Do I need to save away the previous one & chain to it?

Is that the best way for this thread?

What about JavaFX's other threads? Does application code ever run on those 
threads?

How can I know that something went wrong on those threads? Even if my code 
never runs there, I still want an automated way to know if something went 
wrong.


Thanks,

Neil




From:   Scott Palmer 
To: "openjfx-dev@openjdk.java.net" , 
Date:   05/22/2014 03:56 PM
Subject:    Re: Layout regression
Sent by:"openjfx-dev" 



This appears to be a bug introduced in JavaFX 8
I have filed https://javafx-jira.kenai.com/browse/RT-37252 and will
work on a test case.

Scott

On Thu, May 22, 2014 at 3:45 PM, Scott Palmer  wrote:
> I'm investigating an issue with my application where things are
> working fine running with JavaFX 2.2 on 7u55, but I have a particular
> case where 8u5 is throwing the following exception during layout:
>
> Exception in thread "JavaFX Application Thread" 
java.lang.NullPointerException
> at javafx.scene.layout.GridPane.computeMinHeights(GridPane.java:1450)
> at javafx.scene.layout.GridPane.computeMinHeight(GridPane.java:1224)
> at javafx.scene.Parent.minHeight(Parent.java:946)
> at javafx.scene.layout.Region.minHeight(Region.java:1404)
> at 
javafx.scene.layout.Region.computeChildMinAreaHeight(Region.java:1700)
> at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1981)
> at javafx.scene.layout.Region.computeMaxMinAreaHeight(Region.java:1854)
> at javafx.scene.layout.StackPane.computeMinHeight(StackPane.java:293)
> at javafx.scene.Parent.minHeight(Parent.java:946)
> at javafx.scene.layout.Region.minHeight(Region.java:1404)
> at 
javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
> at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1982)
> at javafx.scene.layout.Region.computeMaxPrefAreaHeight(Region.java:1884)
> at javafx.scene.layout.StackPane.computePrefHeight(StackPane.java:310)
> at javafx.scene.Parent.prefHeight(Parent.java:918)
> at javafx.scene.layout.Region.prefHeight(Region.java:1438)
> at 
com.sun.javafx.scene.control.skin.TitledPaneSkin.computePrefHeight(TitledPaneSkin.java:249)
> at javafx.scene.control.Control.computePrefHeight(Control.java:543)
> at javafx.scene.Parent.prefHeight(Parent.java:918)
> at javafx.scene.layout.Region.prefHeight(Region.java:1438)
> at 
javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
> at javafx.scene.layout.GridPane.computePrefHeights(GridPane.java:1407)
> at javafx.scene.layout.GridPane.computePrefHeight(GridPane.java:1242)
> at javafx.scene.Parent.prefHeight(Parent.java:918)
> at javafx.scene.layout.Region.prefHeight(Region.java:1438)
> at 
com.sun.javafx.scene.control.skin.ScrollPaneSkin.computeScrollNodeSize(ScrollPaneSkin.java:916)
> at 
com.sun.javafx.scene.control.skin.ScrollPaneSkin.layoutChildren(ScrollPaneSkin.java:791)
> at javafx.scene.control.Control.layoutChildren(Control.java:574)
> at javafx.scene.Parent.layout(Parent.java:1076)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Scene.doLayoutPass(Scene.java:576)
> at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2386)
> at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:321)
> at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:319)
> at java.security.AccessController.doPrivileged(Native Method)
> at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:319)
> at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:348)
> at 
com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:479)
> at 
com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:460)
> at 
com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:327)
> at 
com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
> at com.sun.glass.ui.win.WinApplication._runL

Re: Layout regression

2014-05-22 Thread Stephen F Northover
Thanks Scott.  It maybe that if you can't isolate a case, you can build 
FX from source (easy on Mac or Linux) and add some prints and debugging 
code.  See you in the JIRA!


Steve

On 2014-05-22 3:55 PM, Scott Palmer wrote:

This appears to be a bug introduced in JavaFX 8
I have filed https://javafx-jira.kenai.com/browse/RT-37252 and will
work on a test case.

Scott

On Thu, May 22, 2014 at 3:45 PM, Scott Palmer  wrote:

I'm investigating an issue with my application where things are
working fine running with JavaFX 2.2 on 7u55, but I have a particular
case where 8u5 is throwing the following exception during layout:

Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at javafx.scene.layout.GridPane.computeMinHeights(GridPane.java:1450)
at javafx.scene.layout.GridPane.computeMinHeight(GridPane.java:1224)
at javafx.scene.Parent.minHeight(Parent.java:946)
at javafx.scene.layout.Region.minHeight(Region.java:1404)
at javafx.scene.layout.Region.computeChildMinAreaHeight(Region.java:1700)
at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1981)
at javafx.scene.layout.Region.computeMaxMinAreaHeight(Region.java:1854)
at javafx.scene.layout.StackPane.computeMinHeight(StackPane.java:293)
at javafx.scene.Parent.minHeight(Parent.java:946)
at javafx.scene.layout.Region.minHeight(Region.java:1404)
at javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1982)
at javafx.scene.layout.Region.computeMaxPrefAreaHeight(Region.java:1884)
at javafx.scene.layout.StackPane.computePrefHeight(StackPane.java:310)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at 
com.sun.javafx.scene.control.skin.TitledPaneSkin.computePrefHeight(TitledPaneSkin.java:249)
at javafx.scene.control.Control.computePrefHeight(Control.java:543)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
at javafx.scene.layout.GridPane.computePrefHeights(GridPane.java:1407)
at javafx.scene.layout.GridPane.computePrefHeight(GridPane.java:1242)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at 
com.sun.javafx.scene.control.skin.ScrollPaneSkin.computeScrollNodeSize(ScrollPaneSkin.java:916)
at 
com.sun.javafx.scene.control.skin.ScrollPaneSkin.layoutChildren(ScrollPaneSkin.java:791)
at javafx.scene.control.Control.layoutChildren(Control.java:574)
at javafx.scene.Parent.layout(Parent.java:1076)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Scene.doLayoutPass(Scene.java:576)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2386)
at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:321)
at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:319)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:319)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:348)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:479)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:460)
at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:327)
at 
com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39)
at com.sun.glass.ui.win.WinApplication$4$1.run(WinApplication.java:112)
at java.lang.Thread.run(Thread.java:745)

As you can see, it's all JavaFX code on the stack, so this is a little
tricky to debug.  As such I'm not sure yet if this is a JavaFX bug
introduced with 8.0 or an application bug that was masked in JavaFX
2.2 and is now showing up in JavaFX 8.

This happens when the managed/visible state of children changes.. but
I think it only for the case when all the children become unmanaged.

Once it happens JavaFX is crippled and pretty much all layout is
broken.  Popups (menus) still work and I can exit the application, but
all layout in the main window seems to not happen anymore.  Manual
positioning of nodes still works though.

I'll try to isolate a reproducible test case and file a bug report of course.

Scott




Re: Layout regression

2014-05-22 Thread Scott Palmer
This appears to be a bug introduced in JavaFX 8
I have filed https://javafx-jira.kenai.com/browse/RT-37252 and will
work on a test case.

Scott

On Thu, May 22, 2014 at 3:45 PM, Scott Palmer  wrote:
> I'm investigating an issue with my application where things are
> working fine running with JavaFX 2.2 on 7u55, but I have a particular
> case where 8u5 is throwing the following exception during layout:
>
> Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
> at javafx.scene.layout.GridPane.computeMinHeights(GridPane.java:1450)
> at javafx.scene.layout.GridPane.computeMinHeight(GridPane.java:1224)
> at javafx.scene.Parent.minHeight(Parent.java:946)
> at javafx.scene.layout.Region.minHeight(Region.java:1404)
> at javafx.scene.layout.Region.computeChildMinAreaHeight(Region.java:1700)
> at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1981)
> at javafx.scene.layout.Region.computeMaxMinAreaHeight(Region.java:1854)
> at javafx.scene.layout.StackPane.computeMinHeight(StackPane.java:293)
> at javafx.scene.Parent.minHeight(Parent.java:946)
> at javafx.scene.layout.Region.minHeight(Region.java:1404)
> at javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
> at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1982)
> at javafx.scene.layout.Region.computeMaxPrefAreaHeight(Region.java:1884)
> at javafx.scene.layout.StackPane.computePrefHeight(StackPane.java:310)
> at javafx.scene.Parent.prefHeight(Parent.java:918)
> at javafx.scene.layout.Region.prefHeight(Region.java:1438)
> at 
> com.sun.javafx.scene.control.skin.TitledPaneSkin.computePrefHeight(TitledPaneSkin.java:249)
> at javafx.scene.control.Control.computePrefHeight(Control.java:543)
> at javafx.scene.Parent.prefHeight(Parent.java:918)
> at javafx.scene.layout.Region.prefHeight(Region.java:1438)
> at javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
> at javafx.scene.layout.GridPane.computePrefHeights(GridPane.java:1407)
> at javafx.scene.layout.GridPane.computePrefHeight(GridPane.java:1242)
> at javafx.scene.Parent.prefHeight(Parent.java:918)
> at javafx.scene.layout.Region.prefHeight(Region.java:1438)
> at 
> com.sun.javafx.scene.control.skin.ScrollPaneSkin.computeScrollNodeSize(ScrollPaneSkin.java:916)
> at 
> com.sun.javafx.scene.control.skin.ScrollPaneSkin.layoutChildren(ScrollPaneSkin.java:791)
> at javafx.scene.control.Control.layoutChildren(Control.java:574)
> at javafx.scene.Parent.layout(Parent.java:1076)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Parent.layout(Parent.java:1082)
> at javafx.scene.Scene.doLayoutPass(Scene.java:576)
> at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2386)
> at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:321)
> at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:319)
> at java.security.AccessController.doPrivileged(Native Method)
> at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:319)
> at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:348)
> at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:479)
> at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:460)
> at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:327)
> at 
> com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
> at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
> at com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39)
> at com.sun.glass.ui.win.WinApplication$4$1.run(WinApplication.java:112)
> at java.lang.Thread.run(Thread.java:745)
>
> As you can see, it's all JavaFX code on the stack, so this is a little
> tricky to debug.  As such I'm not sure yet if this is a JavaFX bug
> introduced with 8.0 or an application bug that was masked in JavaFX
> 2.2 and is now showing up in JavaFX 8.
>
> This happens when the managed/visible state of children changes.. but
> I think it only for the case when all the children become unmanaged.
>
> Once it happens JavaFX is crippled and pretty much all layout is
> broken.  Popups (menus) still work and I can exit the application, but
> all layout in the main window seems to not happen anymore.  Manual
> positioning of nodes still works though.
>
> I'll try to isolate a reproducible test case and file a bug report of course.
>
> Scott


Layout regression

2014-05-22 Thread Scott Palmer
I'm investigating an issue with my application where things are
working fine running with JavaFX 2.2 on 7u55, but I have a particular
case where 8u5 is throwing the following exception during layout:

Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at javafx.scene.layout.GridPane.computeMinHeights(GridPane.java:1450)
at javafx.scene.layout.GridPane.computeMinHeight(GridPane.java:1224)
at javafx.scene.Parent.minHeight(Parent.java:946)
at javafx.scene.layout.Region.minHeight(Region.java:1404)
at javafx.scene.layout.Region.computeChildMinAreaHeight(Region.java:1700)
at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1981)
at javafx.scene.layout.Region.computeMaxMinAreaHeight(Region.java:1854)
at javafx.scene.layout.StackPane.computeMinHeight(StackPane.java:293)
at javafx.scene.Parent.minHeight(Parent.java:946)
at javafx.scene.layout.Region.minHeight(Region.java:1404)
at javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
at javafx.scene.layout.Region.getMaxAreaHeight(Region.java:1982)
at javafx.scene.layout.Region.computeMaxPrefAreaHeight(Region.java:1884)
at javafx.scene.layout.StackPane.computePrefHeight(StackPane.java:310)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at 
com.sun.javafx.scene.control.skin.TitledPaneSkin.computePrefHeight(TitledPaneSkin.java:249)
at javafx.scene.control.Control.computePrefHeight(Control.java:543)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at javafx.scene.layout.Region.computeChildPrefAreaHeight(Region.java:1765)
at javafx.scene.layout.GridPane.computePrefHeights(GridPane.java:1407)
at javafx.scene.layout.GridPane.computePrefHeight(GridPane.java:1242)
at javafx.scene.Parent.prefHeight(Parent.java:918)
at javafx.scene.layout.Region.prefHeight(Region.java:1438)
at 
com.sun.javafx.scene.control.skin.ScrollPaneSkin.computeScrollNodeSize(ScrollPaneSkin.java:916)
at 
com.sun.javafx.scene.control.skin.ScrollPaneSkin.layoutChildren(ScrollPaneSkin.java:791)
at javafx.scene.control.Control.layoutChildren(Control.java:574)
at javafx.scene.Parent.layout(Parent.java:1076)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Parent.layout(Parent.java:1082)
at javafx.scene.Scene.doLayoutPass(Scene.java:576)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2386)
at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:321)
at com.sun.javafx.tk.Toolkit$3.run(Toolkit.java:319)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:319)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:348)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:479)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:460)
at com.sun.javafx.tk.quantum.QuantumToolkit$13.run(QuantumToolkit.java:327)
at 
com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39)
at com.sun.glass.ui.win.WinApplication$4$1.run(WinApplication.java:112)
at java.lang.Thread.run(Thread.java:745)

As you can see, it's all JavaFX code on the stack, so this is a little
tricky to debug.  As such I'm not sure yet if this is a JavaFX bug
introduced with 8.0 or an application bug that was masked in JavaFX
2.2 and is now showing up in JavaFX 8.

This happens when the managed/visible state of children changes.. but
I think it only for the case when all the children become unmanaged.

Once it happens JavaFX is crippled and pretty much all layout is
broken.  Popups (menus) still work and I can exit the application, but
all layout in the main window seems to not happen anymore.  Manual
positioning of nodes still works though.

I'll try to isolate a reproducible test case and file a bug report of course.

Scott


hg: openjfx/8/controls/rt: RT-24920: [CheckBox, RadioButton] Layout regression (was: Text Overrun incorrect work in CheckBox and RadioButton)

2013-08-29 Thread hang . vo
Changeset: c52ac94b9d02
Author:leifs
Date:  2013-08-29 12:48 -0700
URL:   http://hg.openjdk.java.net/openjfx/8/controls/rt/rev/c52ac94b9d02

RT-24920: [CheckBox, RadioButton] Layout regression (was: Text Overrun 
incorrect work in CheckBox and RadioButton)

! 
modules/controls/src/main/java/com/sun/javafx/scene/control/skin/LabeledSkinBase.java