Merge pull request #270 from Chethan2k1/device-verification
Device verification and Cross-Signing
1 files changed, 97 insertions, 0 deletions
diff --git a/resources/qml/device-verification/DeviceVerification.qml b/resources/qml/device-verification/DeviceVerification.qml
new file mode 100644
index 00000000..2e8f7504
--- /dev/null
+++ b/resources/qml/device-verification/DeviceVerification.qml
@@ -0,0 +1,97 @@
+import QtQuick 2.10
+import QtQuick.Controls 2.10
+import QtQuick.Window 2.10
+
+import im.nheko 1.0
+
+ApplicationWindow {
+ property var flow
+
+ onClosing: TimelineManager.removeVerificationFlow(flow)
+
+ title: stack.currentItem.title
+ id: dialog
+
+ 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); }
+ }
+ ]
+}
+}
|