diff --git a/app/src/main/java/io/xpipe/app/update/AppInstaller.java b/app/src/main/java/io/xpipe/app/update/AppInstaller.java index 521cf41e..6d817c06 100644 --- a/app/src/main/java/io/xpipe/app/update/AppInstaller.java +++ b/app/src/main/java/io/xpipe/app/update/AppInstaller.java @@ -73,12 +73,16 @@ public class AppInstaller { shellProcessControl, String.format( """ + echo Installing %s ... cd /D "%%HOMEDRIVE%%%%HOMEPATH%%" + echo + msiexec /i "%s" /lv "%s" /qr start "" /wait msiexec /i "%s" /lv "%s" /qr + echo Starting XPipe ... + echo + "%s" start "" "%s" """, - file, logFile, exec)); - shellProcessControl.executeSimpleCommand("start \"XPipe Updater\" /min cmd /c \"" + script + "\""); + file, file, logFile, file, logFile, exec, exec)); + TerminalLauncher.openDirect("XPipe Updater", LocalShell.getShell(), script); } @Override diff --git a/app/src/main/java/io/xpipe/app/update/UpdateChangelogAlert.java b/app/src/main/java/io/xpipe/app/update/UpdateChangelogAlert.java index f33fcbf3..16c34f16 100644 --- a/app/src/main/java/io/xpipe/app/update/UpdateChangelogAlert.java +++ b/app/src/main/java/io/xpipe/app/update/UpdateChangelogAlert.java @@ -9,6 +9,7 @@ import javafx.scene.control.Alert; import javafx.scene.control.ButtonBar; import javafx.scene.control.ButtonType; import javafx.stage.Modality; +import javafx.stage.Stage; public class UpdateChangelogAlert { @@ -48,6 +49,7 @@ public class UpdateChangelogAlert { alert.getDialogPane().setContent(markdown); alert.getButtonTypes().add(new ButtonType(AppI18n.get("gotIt"), ButtonBar.ButtonData.OK_DONE)); + ((Stage) alert.getDialogPane().getScene().getWindow()).setAlwaysOnTop(true); }, r -> r.filter(b -> b.getButtonData().isDefaultButton()).ifPresent(t -> {})); }