import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Modality;
import javafx.stage.Stage;

public class RT40798a extends Application {
    @Override
    public void start(Stage stage) throws Exception {
        stage.setScene(new Scene(new Button("hello")));
        stage.setResizable(true);
        stage.sizeToScene();
        stage.show();
        
        // changing initStyle has not effect

        Stage modalStage;
        
        modalStage = new Stage();

        // if initOwner is set tp stage AND WINDOW_MODAL iset, then stage is not
        // resizable when modelStage is closed. If WINDOW_MODAL is set on its
        // own then stage is resizable when modalStage is closed.

        modalStage.initOwner(stage);
        modalStage.initModality(Modality.WINDOW_MODAL);

        // if APPLICATION_MODAL is set then stage is not resizable when
        // modelStage is closed
        //modalStage.initModality(Modality.APPLICATION_MODAL);

        modalStage.setScene(new Scene(new Button("modal hello")));
        modalStage.sizeToScene();
        modalStage.show();
    }
} 
