From 3742ccbdd3a8e08d429a7a8a59175c03e0f91a8b Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Thu, 28 Sep 2017 13:12:42 -0700 Subject: [PATCH] Fix keyboard focus during setup while tip is up --- .../hifi/commerce/wallet/PassphraseSelection.qml | 15 +++++++++++---- .../qml/hifi/commerce/wallet/WalletSetup.qml | 2 ++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/interface/resources/qml/hifi/commerce/wallet/PassphraseSelection.qml b/interface/resources/qml/hifi/commerce/wallet/PassphraseSelection.qml index e7ff8489d1..4f2ae0f9b2 100644 --- a/interface/resources/qml/hifi/commerce/wallet/PassphraseSelection.qml +++ b/interface/resources/qml/hifi/commerce/wallet/PassphraseSelection.qml @@ -26,6 +26,7 @@ Item { id: root; property bool isChangingPassphrase: false; property bool isShowingTip: false; + property bool shouldImmediatelyFocus: true; // This object is always used in a popup. // This MouseArea is used to prevent a user from being @@ -53,10 +54,8 @@ Item { // TODO: Fix this unlikely bug onVisibleChanged: { if (visible) { - if (root.isChangingPassphrase) { - currentPassphraseField.focus = true; - } else { - passphraseField.focus = true; + if (root.shouldImmediatelyFocus) { + focusFirstTextField(); } sendMessageToLightbox({method: 'disableHmdPreview'}); } else { @@ -320,5 +319,13 @@ Item { setErrorText(""); } + function focusFirstTextField() { + if (root.isChangingPassphrase) { + currentPassphraseField.focus = true; + } else { + passphraseField.focus = true; + } + } + signal sendMessageToLightbox(var msg); } diff --git a/interface/resources/qml/hifi/commerce/wallet/WalletSetup.qml b/interface/resources/qml/hifi/commerce/wallet/WalletSetup.qml index c2b20a37ef..b90dc925a6 100644 --- a/interface/resources/qml/hifi/commerce/wallet/WalletSetup.qml +++ b/interface/resources/qml/hifi/commerce/wallet/WalletSetup.qml @@ -422,6 +422,7 @@ Item { onClicked: { root.hasShownSecurityImageTip = true; securityImageTip.visible = false; + passphraseSelection.focusFirstTextField(); } } } @@ -466,6 +467,7 @@ Item { PassphraseSelection { id: passphraseSelection; + shouldImmediatelyFocus: root.hasShownSecurityImageTip; isShowingTip: securityImageTip.visible; anchors.top: passphraseTitleHelper.bottom; anchors.topMargin: 30;