-
Bug
-
Resolution: Fixed
-
P3
-
8u25, 9
-
RHELS 6.5, x86_64, Gnome, JDK 1.8u25
When a stage that owns child stages is minimized (iconified) then restored, the child stage(s) lose their original position (they go back to 0,0). The child stage does, however, keep its proper dimensions.
This also happens if the desktop is changed away then back (eg. gnome multiple desktops).
A simple example to demonstrate:
public class UnitTest18 extends Application
{
@Override
public void start(Stage main_stage) throws Exception {
main_stage.setScene(new Scene(new Label("Main Stage\nMinimize then Restore Me!")));
main_stage.setWidth(400);
main_stage.setHeight(300);
main_stage.setTitle("Owner");
main_stage.show();
final Stage child_stage = new Stage(StageStyle.DECORATED);
child_stage.initOwner(main_stage);
child_stage.setScene(new Scene(new Label("Child Stage")));
child_stage.setWidth(200);
child_stage.setHeight(100);
child_stage.setTitle("Child");
child_stage.show();
}
}
This also happens if the desktop is changed away then back (eg. gnome multiple desktops).
A simple example to demonstrate:
public class UnitTest18 extends Application
{
@Override
public void start(Stage main_stage) throws Exception {
main_stage.setScene(new Scene(new Label("Main Stage\nMinimize then Restore Me!")));
main_stage.setWidth(400);
main_stage.setHeight(300);
main_stage.setTitle("Owner");
main_stage.show();
final Stage child_stage = new Stage(StageStyle.DECORATED);
child_stage.initOwner(main_stage);
child_stage.setScene(new Scene(new Label("Child Stage")));
child_stage.setWidth(200);
child_stage.setHeight(100);
child_stage.setTitle("Child");
child_stage.show();
}
}