mirror of https://github.com/Nheko-Reborn/nheko
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
144 lines
2.5 KiB
144 lines
2.5 KiB
import QtQuick 2.10
|
|
import QtQuick.Controls 2.10
|
|
import QtQuick.Window 2.10
|
|
import im.nheko 1.0
|
|
|
|
ApplicationWindow {
|
|
id: dialog
|
|
|
|
property var flow
|
|
|
|
onClosing: TimelineManager.removeVerificationFlow(flow)
|
|
title: stack.currentItem.title
|
|
flags: Qt.Dialog
|
|
palette: colors
|
|
height: stack.implicitHeight
|
|
width: stack.implicitWidth
|
|
|
|
StackView {
|
|
id: stack
|
|
|
|
initialItem: newVerificationRequest
|
|
implicitWidth: currentItem.implicitWidth
|
|
implicitHeight: currentItem.implicitHeight
|
|
}
|
|
|
|
Component {
|
|
id: newVerificationRequest
|
|
|
|
NewVerificationRequest {
|
|
}
|
|
|
|
}
|
|
|
|
Component {
|
|
id: waiting
|
|
|
|
Waiting {
|
|
}
|
|
|
|
}
|
|
|
|
Component {
|
|
id: success
|
|
|
|
Success {
|
|
}
|
|
|
|
}
|
|
|
|
Component {
|
|
id: failed
|
|
|
|
Failed {
|
|
}
|
|
|
|
}
|
|
|
|
Component {
|
|
id: digitVerification
|
|
|
|
DigitVerification {
|
|
}
|
|
|
|
}
|
|
|
|
Component {
|
|
id: emojiVerification
|
|
|
|
EmojiVerification {
|
|
}
|
|
|
|
}
|
|
|
|
Item {
|
|
state: flow.state
|
|
states: [
|
|
State {
|
|
name: "PromptStartVerification"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(newVerificationRequest)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "CompareEmoji"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(emojiVerification)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "CompareNumber"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(digitVerification)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "WaitingForKeys"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(waiting)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "WaitingForOtherToAccept"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(waiting)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "WaitingForMac"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(waiting)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "Success"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(success)
|
|
}
|
|
|
|
},
|
|
State {
|
|
name: "Failed"
|
|
|
|
StateChangeScript {
|
|
script: stack.replace(failed)
|
|
}
|
|
|
|
}
|
|
]
|
|
}
|
|
|
|
}
|
|
|