diff --git a/ui/main.qml b/ui/main.qml index 3988d9f457..ae7eee09b9 100644 --- a/ui/main.qml +++ b/ui/main.qml @@ -11,6 +11,7 @@ import "./imports" ApplicationWindow { property alias appSettings: settings + property bool hasAccounts: !!loginModel.rowCount() id: applicationWindow width: 1232 @@ -57,17 +58,11 @@ ApplicationWindow { DSM.State { id: onboardingState - initialState: loginModel.rowCount() ? stateLogin : stateIntro + initialState: hasAccounts ? stateLogin : stateIntro DSM.State { id: stateIntro onEntered: loader.sourceComponent = intro - - DSM.SignalTransition { - targetState: keysMainState - signal: applicationWindow.navigateTo - guard: path === "KeysMain" - } } DSM.State { @@ -121,7 +116,7 @@ ApplicationWindow { } DSM.SignalTransition { - targetState: loginModel.rowCount() ? stateLogin : stateIntro + targetState: hasAccounts ? stateLogin : stateIntro signal: applicationWindow.navigateTo guard: path === "InitialState" } @@ -132,6 +127,12 @@ ApplicationWindow { guard: path === "ExistingKey" } + DSM.SignalTransition { + targetState: keysMainState + signal: applicationWindow.navigateTo + guard: path === "KeysMain" + } + DSM.FinalState { id: onboardingDoneState } @@ -179,7 +180,11 @@ ApplicationWindow { id: existingKey ExistingKey { onClosed: function () { - applicationWindow.navigateTo("InitialState") + if (hasAccounts) { + applicationWindow.navigateTo("InitialState") + } else { + applicationWindow.navigateTo("KeysMain") + } } } } @@ -188,7 +193,11 @@ ApplicationWindow { id: genKey GenKey { onClosed: function () { - applicationWindow.navigateTo("InitialState") + if (hasAccounts) { + applicationWindow.navigateTo("InitialState") + } else { + applicationWindow.navigateTo("KeysMain") + } } } } diff --git a/ui/onboarding/GenKey.qml b/ui/onboarding/GenKey.qml index 9ee52492f8..e3b5f09106 100644 --- a/ui/onboarding/GenKey.qml +++ b/ui/onboarding/GenKey.qml @@ -27,7 +27,7 @@ Item { CreatePasswordModal { id: createPasswordModal onClosed: function () { - existingKeyView.onClosed() + genKeyView.onClosed() } } }