diff --git a/modules/controls/src/main/java/com/sun/javafx/scene/control/skin/ComboBoxListViewSkin.java b/modules/controls/src/main/java/com/sun/javafx/scene/control/skin/ComboBoxListViewSkin.java --- a/modules/controls/src/main/java/com/sun/javafx/scene/control/skin/ComboBoxListViewSkin.java +++ b/modules/controls/src/main/java/com/sun/javafx/scene/control/skin/ComboBoxListViewSkin.java @@ -334,7 +334,13 @@ super.layoutChildren(x,y,w,h); } - + + // Added to allow subclasses to prevent the popup from hiding when the + // ListView is clicked on (e.g when the list cells have checkboxes). + protected boolean isHideOnClickEnabled() { + return true; + } + /*************************************************************************** @@ -609,7 +615,9 @@ } } - comboBox.hide(); + if (isHideOnClickEnabled()) { + comboBox.hide(); + } } });