Buggy code:
public class MainApplication extends Application implements MessageListener { public static final String DEFAULT_CSS = "jgnash//skin//default.css" ; private static final Logger logger = Logger . getLogger ( MainApplication . class . getName ( ) ) ; private final ResourceBundle rb = ResourceUtils . getBundle ( ) ; private final Executor backgroundExecutor = Executors . newSingleThreadExecutor ( new DefaultDaemonThreadFactory ( ) ) ; private final MainApplication . StatusBarLogHandler statusBarLogHandler = new MainApplication . StatusBarLogHandler ( ) ; private Stage primaryStage ; private StatusBar statusBar ; private TabViewPane tabViewPane ; private BusyPane busyPane ; private static MainApplication instance ; @ Override public void init ( ) throws Exception { } public static MainApplication getInstance ( ) { } @ NotNull public static Logger getLogger ( ) { } @ Override @ SuppressWarnings ( "restriction" ) public void start ( final Stage stage ) throws Exception { Application . setUserAgentStylesheet ( null ) ; StyleManager . getInstance ( ) . addUserAgentStylesheet ( MainApplication . DEFAULT_CSS ) ; primaryStage = stage ; busyPane = new BusyPane ( ) ; final MenuBar menuBar = FXMLLoader . load ( MainFX . class . getResource ( "fxml//MainMenuBar.fxml" ) , rb ) ; final ToolBar mainToolBar = FXMLLoader . load ( MainFX . class . getResource ( "fxml//MainToolBar.fxml" ) , rb ) ; tabViewPane = new TabViewPane ( ) ; final VBox top = new VBox ( ) ; top . getChildren ( ) . addAll ( menuBar , mainToolBar ) ; top . setFillWidth ( true ) ; statusBar = new StatusBar ( ) ; final BorderPane borderPane = new BorderPane ( ) ; borderPane . setTop ( top ) ; borderPane . setCenter ( tabViewPane ) ; borderPane . setBottom ( statusBar ) ; final StackPane stackPane = new StackPane ( ) ; stackPane . getChildren ( ) . addAll ( borderPane , busyPane ) ; final Scene scene = new Scene ( stackPane , 600 , 400 ) ; scene . getStylesheets ( ) . add ( MainApplication . DEFAULT_CSS ) ; stage . setTitle ( VERSION ) ; stage . getIcons ( ) . add ( StaticUIMethods . getApplicationIcon ( ) ) ; stage . setScene ( scene ) ; stage . setResizable ( true ) ; installHandlers ( ) ; MessageBus . getInstance ( ) . registerListener ( this , SYSTEM ) ; <START_BUG> StageUtils . addBoundsListener ( stage , getClass ( ) ) ; <END_BUG> stage . show ( ) ; Engine . addLogHandler ( statusBarLogHandler ) ; EngineFactory . addLogHandler ( statusBarLogHandler ) ; YahooParser . addLogHandler ( statusBarLogHandler ) ; UpdateFactory . addLogHandler ( statusBarLogHandler ) ; MainApplication . logger . addHandler ( statusBarLogHandler ) ; stage . toFront ( ) ; stage . requestFocus ( ) ; } private void addViews ( ) { } private void removeViews ( ) { } private void installHandlers ( ) { } public Stage getPrimaryStage ( ) { } public void requestFocus ( ) { } public void setBusy ( @ Nullable final Task < ? > task ) { } @ Override public void stop ( ) { } @ Override public void messagePosted ( final Message event ) { } private void setBusyBackground ( final boolean busy ) { } private void updateTitle ( ) { } private class StatusBarLogHandler extends Handler { final Glyph INFO ; final Glyph WARNING ; final Glyph SEVERE ; public StatusBarLogHandler ( ) { } @ Override public void close ( ) throws SecurityException { } @ Override public void flush ( ) { } @ Override public synchronized void publish ( final LogRecord record ) { } private void updateStatus ( final String status , final Glyph glyph ) { } } }

Fix:
StageUtils . addBoundsListener ( stage , MainApplication . class ) ;