diff --git a/src/main/java/ecorp/easy/installer/controllers/MainWindowController.java b/src/main/java/ecorp/easy/installer/controllers/MainWindowController.java index 7daee3dae05c1c72903db915210d3c46f30248ff..e068bd8462a8591dc5c98f3e5980201e29a3ba2a 100644 --- a/src/main/java/ecorp/easy/installer/controllers/MainWindowController.java +++ b/src/main/java/ecorp/easy/installer/controllers/MainWindowController.java @@ -57,7 +57,9 @@ public class MainWindowController implements Initializable { String currentSubRootId =null; ThreadFactory factory = new ThreadFactory("/yaml/"); Device device; //Object encapsulating data about the device to flash - + private boolean isFlashed = false; // True when /e/ OS installed on device + + /** * Initializes the controller class. * @param url @@ -142,6 +144,14 @@ public class MainWindowController implements Initializable { this.titleLabel.setText(i18n.getString(titleKey)); } + /** + * Tell MainController that device is flashed or not + * @param isFlashed + */ + public void setIsFlashed(boolean isFlashed) { + this.isFlashed = isFlashed; + } + /** * Load different group of controls depending of the current step (of whole process) */ @@ -186,8 +196,14 @@ public class MainWindowController implements Initializable { break; case "flashResultRoot": removeNodeFromRoot(currentSubRootId); - currentSubRootId=loadSubUI("8-congrats.fxml"); - this.titleLabel.setText(i18n.getString("congrats_mTitle")); + if( isFlashed ){ + currentSubRootId=loadSubUI("8-congrats.fxml"); + this.titleLabel.setText(i18n.getString("congrats_mTitle")); + } + else{ + currentSubRootId=loadSubUI("9-feedback.fxml"); + this.titleLabel.setText(i18n.getString("feedback_mTitle")); + } break; case "congratsRoot": removeNodeFromRoot(currentSubRootId); diff --git a/src/main/java/ecorp/easy/installer/controllers/subcontrollers/FlashSceneController.java b/src/main/java/ecorp/easy/installer/controllers/subcontrollers/FlashSceneController.java index 6f4a27ad1899c3163b71ac6086953fb21359df27..5bc16ab2a1e82579ff29bf4b778a5bcf0de10ed5 100644 --- a/src/main/java/ecorp/easy/installer/controllers/subcontrollers/FlashSceneController.java +++ b/src/main/java/ecorp/easy/installer/controllers/subcontrollers/FlashSceneController.java @@ -339,7 +339,10 @@ public class FlashSceneController extends AbstractSubSteppedController implement stopped = true; parentController.resetNextButtonEventHandler(); parentController.setNextButtonVisible(true); - if(db.getBoolean("onFlashStop")){ + final boolean isFlashed = db.getBoolean("isFlashed"); + parentController.setIsFlashed(isFlashed); + //if success, move automaticcaly to the next step + if(isFlashed){ parentController.loadSubScene(); } } diff --git a/src/main/java/ecorp/easy/installer/threads/FlashThread.java b/src/main/java/ecorp/easy/installer/threads/FlashThread.java index 8685a9b9982a0ec95e49f7392828ee0287c3f41d..e6677dbc224e4862a3370f4416673b175fa46c3f 100644 --- a/src/main/java/ecorp/easy/installer/threads/FlashThread.java +++ b/src/main/java/ecorp/easy/installer/threads/FlashThread.java @@ -269,7 +269,7 @@ public class FlashThread extends Thread { protected void onRunEnd() { final boolean issueEncountered = atLeastOneError; final DataBundle bundle = new DataBundle(); - bundle.putBoolean("onFlashStop", (success && !cancelled && !issueEncountered)); + bundle.putBoolean("isFlashed", (success && !cancelled && !issueEncountered)); Platform.runLater(() ->{ //Do not use raw success. Because if error declared after a step has succeed then it will be considered as a succes application.onFlashStop( bundle);