From b6a566d13ffe632715a81d609d7734d34be5a967 Mon Sep 17 00:00:00 2001 From: Ming Rui Zhang <mingrui.zhang@savoirfairelinux.com> Date: Thu, 29 Jul 2021 16:55:02 -0400 Subject: [PATCH] wizardview: hide back button while waiting for account generations Gitlab: #470 Change-Id: I79d1b5c77ae9e983e1c264532727616afb23f3ab --- .../components/ConnectToAccountManagerPage.qml | 4 ++++ .../components/ImportFromBackupPage.qml | 4 ++++ .../components/ImportFromDevicePage.qml | 4 ++++ tests/qml/src/tst_WizardView.qml | 15 +++++++++++++++ 4 files changed, 27 insertions(+) diff --git a/src/wizardview/components/ConnectToAccountManagerPage.qml b/src/wizardview/components/ConnectToAccountManagerPage.qml index d7dcd89e4..2eda7a3af 100644 --- a/src/wizardview/components/ConnectToAccountManagerPage.qml +++ b/src/wizardview/components/ConnectToAccountManagerPage.qml @@ -206,10 +206,14 @@ Rectangle { BackButton { id: backButton + objectName: "connectToAccountManagerPageBackButton" + anchors.left: parent.left anchors.top: parent.top anchors.margins: 20 + visible: !connectBtn.spinnerTriggered + preferredSize: JamiTheme.wizardViewPageBackButtonSize onClicked: WizardViewStepModel.previousStep() diff --git a/src/wizardview/components/ImportFromBackupPage.qml b/src/wizardview/components/ImportFromBackupPage.qml index 6ff248bf0..7ffffb038 100644 --- a/src/wizardview/components/ImportFromBackupPage.qml +++ b/src/wizardview/components/ImportFromBackupPage.qml @@ -215,10 +215,14 @@ Rectangle { BackButton { id: backButton + objectName: "importFromBackupPageBackButton" + anchors.left: parent.left anchors.top: parent.top anchors.margins: 20 + visible: !connectBtn.spinnerTriggered + preferredSize: JamiTheme.wizardViewPageBackButtonSize onClicked: WizardViewStepModel.previousStep() diff --git a/src/wizardview/components/ImportFromDevicePage.qml b/src/wizardview/components/ImportFromDevicePage.qml index c6feb9f31..b343aa3e9 100644 --- a/src/wizardview/components/ImportFromDevicePage.qml +++ b/src/wizardview/components/ImportFromDevicePage.qml @@ -178,10 +178,14 @@ Rectangle { BackButton { id: backButton + objectName: "importFromDevicePageBackButton" + anchors.left: parent.left anchors.top: parent.top anchors.margins: 20 + visible: !connectBtn.spinnerTriggered + preferredSize: JamiTheme.wizardViewPageBackButtonSize onClicked: WizardViewStepModel.previousStep() diff --git a/tests/qml/src/tst_WizardView.qml b/tests/qml/src/tst_WizardView.qml index 75d2e5fe7..49ada23dd 100644 --- a/tests/qml/src/tst_WizardView.qml +++ b/tests/qml/src/tst_WizardView.qml @@ -35,6 +35,8 @@ WizardView { spyAccountConfigFinalized.clear() spyReportFailure.clear() spyCloseWizardView.clear() + + spyBackButtonVisible.target = undefined } SignalSpy { @@ -79,6 +81,12 @@ WizardView { signalName: "closeWizardView" } + SignalSpy { + id: spyBackButtonVisible + + signalName: "visibleChanged" + } + TestCase { name: "WelcomePage to different account creation page and return back" when: windowShown @@ -484,6 +492,7 @@ WizardView { var passwordFromBackupEdit = findChild(importFromBackupPage, "passwordFromBackupEdit") var connectBtn = findChild(importFromBackupPage, "connectBtn") var errorLabel = findChild(importFromBackupPage, "errorLabel") + var backButton = findChild(importFromBackupPage, "importFromBackupPageBackButton") // WelcomePage initially compare(controlPanelStackView.children[controlPanelStackView.currentIndex], @@ -492,6 +501,9 @@ WizardView { // Go to importFromBackup page WizardViewStepModel.startAccountCreationFlow( WizardViewStepModel.AccountCreationOption.ImportFromBackup) + + spyBackButtonVisible.target = backButton + compare(passwordFromBackupEdit.focus, true) var fileName = "gz_test.gz" @@ -505,6 +517,9 @@ WizardView { connectBtn.clicked() spyReportFailure.wait() verify(spyReportFailure.count >= 1) + spyBackButtonVisible.wait() + verify(spyBackButtonVisible.count >= 2) + spyBackButtonVisible.clear() compare(importFromBackupPage.errorText, JamiStrings.errorCreateAccount) compare(errorLabel.visible, true) -- GitLab