aboutsummaryrefslogtreecommitdiff
path: root/wizard
diff options
context:
space:
mode:
authorluigi1111 <luigi1111w@gmail.com>2019-03-01 02:38:52 -0600
committerluigi1111 <luigi1111w@gmail.com>2019-03-01 02:38:52 -0600
commitcd9e1bf0ea64cf09d766559f391dc2cdc644323d (patch)
tree0bee20b7601b2d24541c9d0f0c1153331bf30ea1 /wizard
parent39b0fa18e199959a241d4a6431b62e64c50f301c (diff)
parentfc68567f23b2f754f3e54e73c00a6ca41558f923 (diff)
downloadmonzero-gui-cd9e1bf0ea64cf09d766559f391dc2cdc644323d.tar.gz
monzero-gui-cd9e1bf0ea64cf09d766559f391dc2cdc644323d.tar.xz
monzero-gui-cd9e1bf0ea64cf09d766559f391dc2cdc644323d.zip
Merge pull request #1989
fc68567 wizard: improve restore from device ui/ux (selsta)
Diffstat (limited to 'wizard')
-rw-r--r--wizard/WizardController.qml7
-rw-r--r--wizard/WizardCreateDevice1.qml33
-rw-r--r--wizard/WizardSummary.qml8
3 files changed, 46 insertions, 2 deletions
diff --git a/wizard/WizardController.qml b/wizard/WizardController.qml
index c57ff042..4224e904 100644
--- a/wizard/WizardController.qml
+++ b/wizard/WizardController.qml
@@ -60,6 +60,7 @@ Rectangle {
wizardController.walletOptionsIsRecovering = false;
wizardController.walletOptionsIsRecoveringFromDevice = false;
wizardController.walletOptionsDeviceName = '';
+ wizardController.walletOptionsDeviceIsRestore = false;
wizardController.tmpWalletFilename = '';
wizardController.walletRestoreMode = 'seed'
wizardController.walletOptionsSubaddressLookahead = '';
@@ -89,6 +90,7 @@ Rectangle {
property bool walletOptionsIsRecoveringFromDevice: false
property string walletOptionsSubaddressLookahead: ''
property string walletOptionsDeviceName: ''
+ property bool walletOptionsDeviceIsRestore: false
property string tmpWalletFilename: ''
property var remoteNodes: ''
@@ -388,7 +390,10 @@ Rectangle {
wizardController.m_wallet = wallet;
wizardController.walletOptionsIsRecoveringFromDevice = true;
wizardController.tmpWalletFilename = tmp_wallet_filename;
- wizardController.walletOptionsRestoreHeight = wizardController.m_wallet.walletCreationHeight;
+ if (!wizardController.walletOptionsDeviceIsRestore) {
+ // User creates a hardware wallet for the first time. Use a recent block height from API.
+ wizardController.walletOptionsRestoreHeight = wizardController.m_wallet.walletCreationHeight;
+ }
} else {
console.log(wallet.errorString)
appWindow.showStatusMessage(qsTr(wallet.errorString), 5);
diff --git a/wizard/WizardCreateDevice1.qml b/wizard/WizardCreateDevice1.qml
index 060c4f12..f80b767d 100644
--- a/wizard/WizardCreateDevice1.qml
+++ b/wizard/WizardCreateDevice1.qml
@@ -79,6 +79,38 @@ Rectangle {
id: walletInput
}
+ ColumnLayout {
+ spacing: 0
+
+ Layout.topMargin: 10 * scaleRatio
+ Layout.fillWidth: true
+
+ MoneroComponents.RadioButton {
+ id: newDeviceWallet
+ text: qsTr("Create a new wallet from device.") + translationManager.emptyString
+ fontSize: 16 * scaleRatio
+ checked: true
+ onClicked: {
+ checked = true;
+ restoreDeviceWallet.checked = false;
+ wizardController.walletOptionsDeviceIsRestore = false;
+ }
+ }
+
+ MoneroComponents.RadioButton {
+ id: restoreDeviceWallet
+ Layout.topMargin: 10 * scaleRatio
+ text: qsTr("Restore a wallet from device. Use this if you used your hardware wallet before.") + translationManager.emptyString
+ fontSize: 16 * scaleRatio
+ checked: false
+ onClicked: {
+ checked = true;
+ newDeviceWallet.checked = false;
+ wizardController.walletOptionsDeviceIsRestore = true;
+ }
+ }
+ }
+
GridLayout {
Layout.topMargin: 10 * scaleRatio
Layout.fillWidth: true
@@ -88,6 +120,7 @@ Rectangle {
MoneroComponents.LineEdit {
id: restoreHeight
+ visible: !newDeviceWallet.checked
Layout.fillWidth: true
labelText: qsTr("Wallet creation date as `YYYY-MM-DD` or restore height") + translationManager.emptyString
labelFontSize: 14 * scaleRatio
diff --git a/wizard/WizardSummary.qml b/wizard/WizardSummary.qml
index 5b62a345..e3e576e4 100644
--- a/wizard/WizardSummary.qml
+++ b/wizard/WizardSummary.qml
@@ -67,7 +67,13 @@ ColumnLayout {
Layout.fillWidth: true
header: qsTr("Restore height") + translationManager.emptyString
value: wizardController.walletOptionsRestoreHeight
- visible: wizardController.walletOptionsRestoreHeight > 0
+ visible: {
+ if (walletOptionsIsRecoveringFromDevice && !wizardController.walletOptionsDeviceIsRestore) {
+ return false;
+ } else {
+ return (wizardController.walletOptionsRestoreHeight > 0);
+ }
+ }
}
WizardSummaryItem {