<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Hi,</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">I have found a height bug when I am trying to reduce the height of one ComboBox item (a Separator) in a simple ComboBox.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">One would expect that to achieve this, you'd set the maximum height for that particular ListCell; but this has no effect.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Instead what I need to do is set the <i>minimum</i> height (but to the value I wish to be the maximum height), and I must <b>also </b>set the <i>maximum </i>height to any value (if I do not, my minimum height (i.e., my desired maximum) gets ignored)...</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">For example, if I want the maximum height of this Separator to be 6, I must set the minimum height to 6 and I must set the maximum height to anything, even 1.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Obviously this is counter-intuitive and doesn't make any logical sense.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Example to reproduce (running from JFX master branch):</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style=""><font face="monospace">public class ComboBoxHeightBug extends Application {<br>    public static void main(String[] args) {<br>        launch(args);<br>    }<br><br>    public void start(Stage stage) {<br>        ComboBox<Object> cb = new ComboBox<>();<br>        cb.getItems().addAll("Apple", "Banana", </font>

<span style="font-family:monospace">new Separator()</span> <font face="monospace">, "Carrot", "Lettuce");<br>        cb.setCellFactory(_ -> new ListCell<>() {<br>            protected void updateItem(Object item, boolean empty) {<br>                super.updateItem(item, empty);<br>                if (empty || item == null) {<br>                    setText(null);<br>                    setGraphic(null);<br>                    setStyle("");<br></font><span style="font-family:monospace">                    // Set back to default</span><br style="font-family:monospace"><font face="monospace">                    setMinHeight(USE_PREF_SIZE);<br>                    setMaxHeight(Double.MAX_VALUE);<br>                } else if (item instanceof Separator) {<br>                    setText(null);<br>                    setGraphic((Separator) item);<br>                    setDisable(true);<br>                    setMinHeight(6); // This is required for any "max height" to apply, and appears to be the value that is used to determine height<br>                    setMaxHeight(1); // Setting this (to 6) should work on its own, it doesn't, the value appears irrelevant -- but it MUST be set to get the separator height to be 6<br>                } else {<br>                    setText(item.toString());<br>                    setGraphic(null);<br>                    setStyle("");<br>                    // Set back to default<br>                    setMinHeight(USE_PREF_SIZE);<br>                    setMaxHeight(Double.MAX_VALUE);<br>                }<br>            }<br>        });<br><br>        cb.getSelectionModel().selectFirst();<br>        stage.setScene(new Scene(cb, 200, 100));<br>        stage.show();<br>    }<br>}</font></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Note: I have noticed a few issues like this in general, whereby it requires trial and error to get <i>some</i> desired height to apply; without any apparent logic as to how these values are being arrived at or how they're triggered to be used (I have logged bugs before on this)...</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Kind Regards,</div><div class="gmail_default" style="font-family:verdana,sans-serif">Cormac</div></div>