Additional fix for RT-16364: TextArea: focus is not gained by clicking on empty area diff -r 222abaf43800 javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextAreaSkin.java --- a/javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextAreaSkin.java Wed Sep 07 10:53:04 2011 -0700 +++ b/javafx-ui-controls/src/com/sun/javafx/scene/control/skin/TextAreaSkin.java Wed Sep 07 14:22:10 2011 -0700 @@ -101,7 +101,7 @@ prefWidth += padding.getLeft() + padding.getRight(); - return prefWidth; + return Math.max(prefWidth, scrollPane.getViewportBounds().getWidth()); } @Override @@ -131,7 +131,7 @@ prefHeight += padding.getTop() + padding.getBottom(); - return Math.max(prefHeight, scrollPane.getPrefViewportHeight()); + return Math.max(prefHeight, scrollPane.getViewportBounds().getHeight()); } @Override @@ -260,6 +260,11 @@ || scrollPane.getPrefViewportHeight() == 0) { updatePrefViewportWidth(); updatePrefViewportHeight(); + if (getParent() != null && scrollPane.getPrefViewportWidth() > 0 + || scrollPane.getPrefViewportHeight() > 0) { + // Force layout of viewRect in ScrollPaneSkin + getParent().requestLayout(); + } } } }