diff --git a/app/src/main/java/io/xpipe/app/core/mode/BaseMode.java b/app/src/main/java/io/xpipe/app/core/mode/BaseMode.java index 1cb70ac86..058881daf 100644 --- a/app/src/main/java/io/xpipe/app/core/mode/BaseMode.java +++ b/app/src/main/java/io/xpipe/app/core/mode/BaseMode.java @@ -14,7 +14,6 @@ import io.xpipe.app.update.XPipeDistributionType; import io.xpipe.app.util.FileBridge; import io.xpipe.app.util.LicenseProvider; import io.xpipe.app.util.LocalShell; -import io.xpipe.app.util.UnlockAlert; import io.xpipe.core.util.JacksonMapper; public class BaseMode extends OperationMode { @@ -55,7 +54,6 @@ public class BaseMode extends OperationMode { // Initialize socket server before storage // as we should be prepared for git askpass commands AppSocketServer.init(); - UnlockAlert.showIfNeeded(); DataStorage.init(); AppFileWatcher.init(); FileBridge.init(); diff --git a/app/src/main/java/io/xpipe/app/storage/StandardStorage.java b/app/src/main/java/io/xpipe/app/storage/StandardStorage.java index f74452834..51cf04a96 100644 --- a/app/src/main/java/io/xpipe/app/storage/StandardStorage.java +++ b/app/src/main/java/io/xpipe/app/storage/StandardStorage.java @@ -3,6 +3,7 @@ package io.xpipe.app.storage; import io.xpipe.app.issue.ErrorEvent; import io.xpipe.app.issue.TrackEvent; import io.xpipe.app.prefs.AppPrefs; +import io.xpipe.app.util.UnlockAlert; import io.xpipe.core.process.OsType; import io.xpipe.core.store.LocalStore; import lombok.Getter; @@ -54,6 +55,13 @@ public class StandardStorage extends DataStorage { this.gitStorageHandler.init(dir); this.gitStorageHandler.beforeStorageLoad(); + try { + // This can fail if the necessary platform initialization fails + UnlockAlert.showIfNeeded(); + } catch (Exception e) { + ErrorEvent.fromThrowable(e).terminal(true).build().handle(); + } + try { initSystemInfo(); } catch (Exception e) {