mirror of
https://github.com/monero-project/monero-gui.git
synced 2024-12-12 19:36:32 +02:00
password page: checking if passwords match. merged "configuration" and
"donation" pages into one
This commit is contained in:
parent
29f3abdeac
commit
78b556575a
@ -29,7 +29,6 @@ QML_IMPORT_PATH =
|
||||
include(deployment.pri)
|
||||
|
||||
# copy language files (xml and images) to the output directory
|
||||
|
||||
copydata.commands = $(COPY_DIR) $$shell_path($$PWD/lang) $$shell_path($$DESTDIR/lang)
|
||||
QMAKE_EXTRA_TARGETS += copydata
|
||||
POST_TARGETDEPS += copydata
|
||||
|
1
qml.qrc
1
qml.qrc
@ -95,5 +95,6 @@
|
||||
<file>wizard/WizardConfigure.qml</file>
|
||||
<file>wizard/WizardDonation.qml</file>
|
||||
<file>wizard/WizardFinish.qml</file>
|
||||
<file>wizard/WizardPasswordInput.qml</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
@ -149,5 +149,33 @@ Item {
|
||||
"as a percentage of that fee, to your transaction to support Monero development. For instance, a 50% " +
|
||||
"autodonation take a transaction fee of 0.005 XMR and add a 0.0025 XMR to support Monero development.")
|
||||
}
|
||||
Column {
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
spacing: 12
|
||||
|
||||
CheckBox {
|
||||
text: qsTr("Allow background mining?")
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
background: "#F0EEEE"
|
||||
fontColor: "#4A4646"
|
||||
fontSize: 18
|
||||
checkedIcon: "../images/checkedVioletIcon.png"
|
||||
uncheckedIcon: "../images/uncheckedIcon.png"
|
||||
checked: true
|
||||
}
|
||||
|
||||
Text {
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
font.family: "Arial"
|
||||
font.pixelSize: 15
|
||||
color: "#4A4646"
|
||||
wrapMode: Text.Wrap
|
||||
text: qsTr("Mining secures the Monero network, and also pays a small reward for the work done. This option " +
|
||||
"will let Monero mine when your computer is on mains power and is idle. It will stop mining when you continue working.")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -31,11 +31,34 @@ import "../components"
|
||||
|
||||
Rectangle {
|
||||
id: wizard
|
||||
property alias nextButton : nextButton
|
||||
|
||||
|
||||
signal useMoneroClicked()
|
||||
border.color: "#DBDBDB"
|
||||
border.width: 1
|
||||
color: "#FFFFFF"
|
||||
|
||||
function switchPage(next) {
|
||||
if(next === false) {
|
||||
if(currentPage > 0) {
|
||||
pages[currentPage].opacity = 0
|
||||
pages[--currentPage].opacity = 1
|
||||
}
|
||||
} else {
|
||||
if(currentPage < pages.length - 1) {
|
||||
pages[currentPage].opacity = 0
|
||||
pages[++currentPage].opacity = 1
|
||||
}
|
||||
}
|
||||
|
||||
// disallow "next" button until password matches
|
||||
if (pages[currentPage] === passwordPage) {
|
||||
nextButton.visible = passwordPage.passwordValid
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Rectangle {
|
||||
id: nextButton
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
@ -62,28 +85,8 @@ Rectangle {
|
||||
}
|
||||
|
||||
property int currentPage: 0
|
||||
function switchPage(next) {
|
||||
var pages = new Array()
|
||||
pages[0] = welcomePage
|
||||
pages[1] = optionsPage
|
||||
pages[2] = createWalletPage
|
||||
pages[3] = passwordPage
|
||||
pages[4] = configurePage
|
||||
pages[5] = donationPage
|
||||
pages[6] = finishPage
|
||||
property var pages: [welcomePage, optionsPage, createWalletPage, passwordPage, /*configurePage,*/ donationPage, finishPage ]
|
||||
|
||||
if(next === false) {
|
||||
if(currentPage > 0) {
|
||||
pages[currentPage].opacity = 0
|
||||
pages[--currentPage].opacity = 1
|
||||
}
|
||||
} else {
|
||||
if(currentPage < pages.length - 1) {
|
||||
pages[currentPage].opacity = 0
|
||||
pages[++currentPage].opacity = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
WizardWelcome {
|
||||
id: welcomePage
|
||||
@ -126,15 +129,15 @@ Rectangle {
|
||||
anchors.rightMargin: 50
|
||||
}
|
||||
|
||||
WizardConfigure {
|
||||
id: configurePage
|
||||
anchors.top: parent.top
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.right: nextButton.left
|
||||
anchors.left: prevButton.right
|
||||
anchors.leftMargin: 50
|
||||
anchors.rightMargin: 50
|
||||
}
|
||||
// WizardConfigure {
|
||||
// id: configurePage
|
||||
// anchors.top: parent.top
|
||||
// anchors.bottom: parent.bottom
|
||||
// anchors.right: nextButton.left
|
||||
// anchors.left: prevButton.right
|
||||
// anchors.leftMargin: 50
|
||||
// anchors.rightMargin: 50
|
||||
// }
|
||||
|
||||
WizardDonation {
|
||||
id: donationPage
|
||||
@ -192,7 +195,7 @@ Rectangle {
|
||||
shadowPressedColor: "#B32D00"
|
||||
releasedColor: "#FF6C3C"
|
||||
pressedColor: "#FF4304"
|
||||
visible: parent.currentPage === 6
|
||||
visible: parent.pages[currentPage] === finishPage
|
||||
onClicked: wizard.useMoneroClicked()
|
||||
}
|
||||
}
|
||||
|
@ -137,35 +137,5 @@ Item {
|
||||
text: qsTr("I want to recover my account<br/>from my 24 work seed")
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
spacing: 30
|
||||
|
||||
Rectangle {
|
||||
width: 202; height: 202
|
||||
radius: 101
|
||||
color: openAccountArea.containsMouse ? "#DBDBDB" : "#FFFFFF"
|
||||
|
||||
Image {
|
||||
anchors.centerIn: parent
|
||||
source: "qrc:///images/openAccount.png"
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
id: openAccountArea
|
||||
anchors.fill: parent
|
||||
hoverEnabled: true
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
font.family: "Arial"
|
||||
font.pixelSize: 16
|
||||
color: "#4A4949"
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
text: qsTr("I want to open account file")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -38,6 +38,18 @@ Item {
|
||||
|
||||
onOpacityChanged: visible = opacity !== 0
|
||||
|
||||
function handlePassword() {
|
||||
// allow to forward step only if passwords match
|
||||
// print("pass1: ", passwordItem.password)
|
||||
// print("pass2: ", retypePasswordItem.password)
|
||||
// TODO: update password strength
|
||||
wizard.nextButton.visible = passwordItem.password === retypePasswordItem.password
|
||||
}
|
||||
|
||||
property bool passwordValid : passwordItem.password != ''
|
||||
&& passwordItem.password === retypePasswordItem.password
|
||||
|
||||
|
||||
Row {
|
||||
id: dotsRow
|
||||
anchors.top: parent.top
|
||||
@ -97,36 +109,18 @@ Item {
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
|
||||
WizardPasswordInput {
|
||||
id: passwordItem
|
||||
anchors.top: headerColumn.bottom
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
anchors.topMargin: 24
|
||||
width: 300
|
||||
height: 62
|
||||
|
||||
TextInput {
|
||||
anchors.fill: parent
|
||||
horizontalAlignment: TextInput.AlignHCenter
|
||||
verticalAlignment: TextInput.AlignVCenter
|
||||
font.family: "Arial"
|
||||
font.pixelSize: 32
|
||||
renderType: Text.NativeRendering
|
||||
color: "#35B05A"
|
||||
passwordCharacter: "•"
|
||||
echoMode: TextInput.Password
|
||||
focus: true
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
height: 1
|
||||
color: "#DBDBDB"
|
||||
}
|
||||
onChanged: handlePassword()
|
||||
}
|
||||
|
||||
|
||||
PrivacyLevelSmall {
|
||||
id: privacyLevel
|
||||
anchors.left: parent.left
|
||||
@ -137,33 +131,13 @@ Item {
|
||||
interactive: false
|
||||
}
|
||||
|
||||
Item {
|
||||
WizardPasswordInput {
|
||||
id: retypePasswordItem
|
||||
anchors.top: privacyLevel.bottom
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
anchors.topMargin: 24
|
||||
width: 300
|
||||
height: 62
|
||||
|
||||
TextInput {
|
||||
anchors.fill: parent
|
||||
horizontalAlignment: TextInput.AlignHCenter
|
||||
verticalAlignment: TextInput.AlignVCenter
|
||||
font.family: "Arial"
|
||||
font.pixelSize: 32
|
||||
renderType: Text.NativeRendering
|
||||
color: "#35B05A"
|
||||
passwordCharacter: "•"
|
||||
echoMode: TextInput.Password
|
||||
focus: true
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
height: 1
|
||||
color: "#DBDBDB"
|
||||
}
|
||||
onChanged: handlePassword()
|
||||
}
|
||||
}
|
||||
|
34
wizard/WizardPasswordInput.qml
Normal file
34
wizard/WizardPasswordInput.qml
Normal file
@ -0,0 +1,34 @@
|
||||
// WizardPasswordInput.qml
|
||||
|
||||
import QtQuick 2.0
|
||||
|
||||
Item {
|
||||
property alias password: password.text
|
||||
signal changed(string password)
|
||||
|
||||
|
||||
TextInput {
|
||||
id : password
|
||||
anchors.fill: parent
|
||||
horizontalAlignment: TextInput.AlignHCenter
|
||||
verticalAlignment: TextInput.AlignVCenter
|
||||
font.family: "Arial"
|
||||
font.pixelSize: 32
|
||||
renderType: Text.NativeRendering
|
||||
color: "#35B05A"
|
||||
passwordCharacter: "•"
|
||||
echoMode: TextInput.Password
|
||||
focus: true
|
||||
Keys.onReleased: {
|
||||
changed(text)
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
height: 1
|
||||
color: "#DBDBDB"
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user