<div dir="ltr"><div class="gmail_default" style=""><font face="verdana, sans-serif">Hi,</font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">I have found an "issue" (open to debate) where the HeaderBar's nodes are pushed out of view. This issue is easily reproduced by wrapping a scene's root node in a StackPane (something that is common for ControlsFx to do, as an example, & without the developer even being aware -- I suspect other libraries do something similar). </font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">Although the observed behaviour is arguably logically correct, I think this should be preventable (e.g, HeaderBar has/gets special meaning/treatment).<br style=""><br>Example: run the below code, vertically resize the window, notice the header/title bar stays in place. Click the button and resize the window again and notice the title bar clips off the screen simply by making minor vertical size adjustments. The window icons remain present.<br></font><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif">public class DisappearingHeaderBug extends Application {</font></div><font face="verdana, sans-serif"><br>    @Override<br>    public void start(Stage primaryStage) {<br>        BorderPane root = new BorderPane();<br>        Button button = new Button("Click for \"bug()\"!");<br>        button.setOnAction(_ -> bug(root));<br><br>        final VBox vbox = new VBox(120, new Label("Something above..."), button, new Label("Something below..."));<br>        root.setCenter(vbox);<br>        root.setTop(getHeaderBar());</font></div><div class="gmail_default" style="">     <font face="verdana, sans-serif">    // root.setTop(new Label("!!! Label !!!")); // This is fine, though</font><br><font face="verdana, sans-serif"><br>        primaryStage.initStyle(StageStyle.EXTENDED);<br>        primaryStage.setScene(new Scene(root, 300, 500));<br>        primaryStage.show();<br>    }<br><br>    // Wrapping the root node in a stackpane is common<br>    private void bug(Pane root) {<br>        StackPane stackPane = new StackPane();<br>        root.getScene().setRoot(stackPane);<br>        stackPane.getChildren().addFirst(root);<br>    }<br><br>    private HeaderBar getHeaderBar() {<br>        HeaderBar headerBar = new HeaderBar();<br>        headerBar.setCenter(new Label(" --- HeaderBar ---"));<br>        headerBar.setLeading(new Label("L"));<br>        return headerBar;<br>    }<br><br>    public static void main(String[] args) {<br>        launch(args);<br>    }<br>}<br><br style=""></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">Sample video: <a href="https://github.com/user-attachments/assets/93a320a5-0010-4941-a2a4-9e0e65cbd57d" rel="noreferrer" target="_blank" style="">https://github.com/user-attachments/assets/93a320a5-0010-4941-a2a4-9e0e65cbd57d</a></font></div><div class="gmail_default" style=""><br></div><div class="gmail_default" style=""><font face="verdana, sans-serif">I am using this latest HeaderBar/EXTENDED code, from this separate PR: <a href="https://github.com/openjdk/jfx/pull/1831">https://github.com/openjdk/jfx/pull/1831</a></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><div class="gmail_default"><font face="verdana, sans-serif">The above issue also occurs simply by using ControlsFx's input field validation, because, unbeknownst to the developer, ControlsFx ultimately wraps the scene's root node in a DecorationPane (which is a StackPane).</font></div></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">I feel like HeaderBar + EXTENDED should somehow be given special treatment to remain static and visible and not susceptible to breaking.</font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">I do not know if I'd consider this as "bug" or not -- or if there's an easy fix or not --</font><span style="font-family:verdana,sans-serif"> but it would prevent the usefulness of HeaderBar & EXTENDED if there's no way to overcome it.</span></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">Kind Regards,</font></div><div class="gmail_default" style=""><font face="verdana, sans-serif">Cormac</font></div><div class="gmail_default" style=""><font face="verdana, sans-serif"><br></font></div><div class="gmail_default" style=""><br></div></div>