diff --git a/src/app/keycard/view.nim b/src/app/keycard/view.nim index 45b5b9c8df..af01a02c1e 100644 --- a/src/app/keycard/view.nim +++ b/src/app/keycard/view.nim @@ -24,4 +24,7 @@ QtObject: proc cardDisconnected*(self: KeycardView) {.signal.} proc simulateDisconnected*(self: KeycardView) {.slot.} = - self.cardDisconnected() \ No newline at end of file + self.cardDisconnected() + + proc simulateConnected*(self: KeycardView) {.slot.} = + self.cardConnected() \ No newline at end of file diff --git a/ui/onboarding/Keycard.qml b/ui/onboarding/Keycard.qml index 07560c28ff..10bf98dafd 100644 --- a/ui/onboarding/Keycard.qml +++ b/ui/onboarding/Keycard.qml @@ -5,12 +5,22 @@ import "../shared/keycard" // this will be the entry point. for now it opens all keycard-related dialogs in sequence for test Item { property var onClosed: function () {} + property bool connected: false + id: keycardView anchors.fill: parent Component.onCompleted: { createPinModal.open() } + Timer { + interval: 2000; running: true; repeat: true + onTriggered: { + connected? keycardModel.simulateDisconnected() : keycardModel.simulateConnected() + connected = !connected + } + } + CreatePINModal { id: createPinModal onClosed: function () { @@ -28,28 +38,14 @@ Item { PINModal { id: pinModal onClosed: function () { - insertCard.open() + keycardView.open() } } InsertCard { id: insertCard - onClosed: function() { + onCancel: function() { keycardView.onClosed() } } - - Connections { - id: connection - target: keycardModel - ignoreUnknownSignals: true - - onCardConnected: { - insertCard.close() - } - - onCardDisconnected: { - insertCard.open() - } - } } \ No newline at end of file diff --git a/ui/onboarding/Keycard/CreatePINModal.qml b/ui/onboarding/Keycard/CreatePINModal.qml index 0036568778..993c9a22ed 100644 --- a/ui/onboarding/Keycard/CreatePINModal.qml +++ b/ui/onboarding/Keycard/CreatePINModal.qml @@ -102,7 +102,6 @@ ModalPopup { enabled: firstPINFieldValid && repeatPINFieldValid onClicked: { - keycardModel.simulateDisconnected() } } } diff --git a/ui/shared/keycard/InsertCard.qml b/ui/shared/keycard/InsertCard.qml index 959fc6fb25..56738de5cc 100644 --- a/ui/shared/keycard/InsertCard.qml +++ b/ui/shared/keycard/InsertCard.qml @@ -8,6 +8,8 @@ import StatusQ.Controls 0.1 import StatusQ.Popups 0.1 StatusModal { + property var onCancel: function() {} + id: insertCard anchors.centerIn: parent @@ -46,7 +48,24 @@ StatusModal { StatusButton { id: cancelButton text: qsTr("Cancel") - onClicked: { insertCard.close() } + onClicked: { + insertCard.close() + onCancel() + } } ] + + Connections { + id: connection + target: keycardModel + ignoreUnknownSignals: true + + onCardConnected: { + insertCard.close() + } + + onCardDisconnected: { + insertCard.open() + } + } }