diff --git a/interface/resources/qml/LoginDialog.qml b/interface/resources/qml/LoginDialog.qml index ce6fdc095a..2a67c568d5 100644 --- a/interface/resources/qml/LoginDialog.qml +++ b/interface/resources/qml/LoginDialog.qml @@ -92,6 +92,6 @@ FocusScope { } Component.onCompleted: { - bodyLoader.setSource("LoginDialog/LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); + bodyLoader.setSource("LoginDialog/LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "linkSteam": false }); } } diff --git a/interface/resources/qml/LoginDialog/CantAccessBody.qml b/interface/resources/qml/LoginDialog/CantAccessBody.qml index 4eeb048318..5d91d9c9ee 100644 --- a/interface/resources/qml/LoginDialog/CantAccessBody.qml +++ b/interface/resources/qml/LoginDialog/CantAccessBody.qml @@ -131,7 +131,7 @@ Item { horizontalAlignment: Text.AlignHCenter Component.onCompleted: { bodyText.text = root.isTablet ? qsTr("Please navigate to your default browser\nto recover your account.\nIf you are in a VR headset, please take it off.") : - qsTr("Please navigate to your default browser to recover your account.\nIf you are in a VR headset, please take it off."); + qsTr("Please navigate to your default browser to recover your account.\nIf you are in a VR headset,\nplease take it off."); bodyTextMetrics.text = bodyText.text; bodyText bodyText.anchors.leftMargin = (parent.width - bodyTextMetrics.width) / 2; diff --git a/interface/resources/qml/LoginDialog/CompleteProfileBody.qml b/interface/resources/qml/LoginDialog/CompleteProfileBody.qml index 89ed567752..873b53f351 100644 --- a/interface/resources/qml/LoginDialog/CompleteProfileBody.qml +++ b/interface/resources/qml/LoginDialog/CompleteProfileBody.qml @@ -26,14 +26,14 @@ Item { readonly property int fontSize: 15 readonly property bool fontBold: true + readonly property bool withSteam: withSteam + QtObject { id: d readonly property int minWidth: 480 - // readonly property int minWidthButton: !root.isTablet ? 256 : 174 - readonly property int minWidthButton: 36 + readonly property int minWidthButton: !root.isTablet ? 256 : 174 property int maxWidth: root.isTablet ? 1280 : root.width readonly property int minHeight: 120 - // readonly property int minHeightButton: !root.isTablet ? 56 : 42 readonly property int minHeightButton: 36 property int maxHeight: root.isTablet ? 720 : root.height @@ -70,7 +70,7 @@ Item { height: banner.height anchors { top: parent.top - topMargin: 85 + topMargin: 0.18 * parent.height } Image { id: banner @@ -121,7 +121,7 @@ Item { } Item { id: buttons - width: Math.max(banner.width, cancelContainer.width + profileButton.width) + width: banner.width height: d.minHeightButton anchors { top: parent.top @@ -129,43 +129,24 @@ Item { left: parent.left leftMargin: (parent.width - banner.width) / 2 } - Item { - id: cancelContainer - width: cancelText.width - height: d.minHeightButton + HifiControlsUit.Button { + id: cancelButton anchors { top: parent.top left: parent.left } - Text { - id: cancelText - text: qsTr("Cancel"); + width: (parent.width - hifi.dimensions.contentSpacing.x) / 2 + height: d.minHeightButton - lineHeight: 1 - color: "white" - font.family: completeProfileBody.fontFamily - font.pixelSize: completeProfileBody.fontSize - font.capitalization: Font.AllUppercase; - font.bold: completeProfileBody.fontBold - lineHeightMode: Text.ProportionalHeight - anchors.centerIn: parent + text: qsTr("CANCEL") + color: hifi.buttons.noneBorderlessWhite + + fontFamily: completeProfileBody.fontFamily + fontSize: completeProfileBody.fontSize + fontBold: completeProfileBody.fontBold + onClicked: { + bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); } - MouseArea { - id: cancelArea - anchors.fill: parent - hoverEnabled: true - onEntered: { - Tablet.playSound(TabletEnums.ButtonHover); - } - onClicked: { - Tablet.playSound(TabletEnums.ButtonClick); - bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); - } - } - TextMetrics { - id: profileButtonTextMetrics - font: cancelText.font - text: qsTr("CREATE YOUR PROFILE") } HifiControlsUit.Button { id: profileButton @@ -173,7 +154,7 @@ Item { top: parent.top right: parent.right } - width: Math.max(profileButtonTextMetrics.width + 2 * hifi.dimensions.contentSpacing.x, d.minWidthButton) + width: (parent.width - hifi.dimensions.contentSpacing.x) / 2 height: d.minHeightButton text: qsTr("Create your profile") @@ -185,8 +166,6 @@ Item { onClicked: { loginErrorMessage.visible = false; loginDialog.createAccountFromSteam(); - bodyLoader.setSource("LoggingInBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, - "withSteam": true, "fromBody": "CompleteProfileBody" }) } } } @@ -212,7 +191,7 @@ Item { onLinkActivated: { loginDialog.isLogIn = true; - bodyLoader.setSource("SignInBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "errorString": "" }); + bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "errorString": "", "linkSteam": true }); } } @@ -246,11 +225,26 @@ Item { lineHeight: 1 lineHeightMode: Text.ProportionalHeight - onLinkActivated: loginDialog.openUrl(link) + onLinkActivated: loginDialog.openUrl(link); } } } + Connections { + target: loginDialog + onHandleCreateCompleted: { + console.log("Create Succeeded") + + loginDialog.loginThroughSteam(); + bodyLoader.setSource("LoggingInBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "withSteam": true }); + } + onHandleCreateFailed: { + console.log("Create Failed: " + error); + + bodyLoader.setSource("UsernameCollisionBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); + } + } + Component.onCompleted: { //but rise Tablet's one instead for Tablet interface if (root.isTablet || root.isOverlay) { diff --git a/interface/resources/qml/LoginDialog/LinkAccountBody.qml b/interface/resources/qml/LoginDialog/LinkAccountBody.qml index 1c01f675e3..1f93904774 100644 --- a/interface/resources/qml/LoginDialog/LinkAccountBody.qml +++ b/interface/resources/qml/LoginDialog/LinkAccountBody.qml @@ -35,6 +35,7 @@ Item { property bool punctuationMode: false property bool withSteam: false + property bool linkSteam: linkSteam property bool withOculus: false property string errorString: errorString @@ -44,7 +45,6 @@ Item { readonly property int minWidthButton: !root.isTablet ? 256 : 174 property int maxWidth: root.isTablet ? 1280 : root.width readonly property int minHeight: 120 - // readonly property int minHeightButton: !root.isTablet ? 56 : 42 readonly property int minHeightButton: 36 property int maxHeight: root.isTablet ? 720 : root.height @@ -73,11 +73,19 @@ Item { loginDialog.isLogIn = true; loginErrorMessage.text = linkAccountBody.errorString; loginErrorMessage.visible = (linkAccountBody.errorString !== ""); - loginButton.text = "Log In"; + loginButton.text = !linkAccountBody.linkSteam ? "Log In" : "Link Account"; loginButton.color = hifi.buttons.blue; emailField.placeholderText = "Username or Email"; var savedUsername = Settings.getValue("keepMeLoggedIn/savedUsername", ""); emailField.text = keepMeLoggedInCheckbox.checked ? savedUsername === "Unknown user" ? "" : savedUsername : ""; + if (linkAccountBody.linkSteam) { + steamInfoText.anchors.top = passwordField.bottom; + keepMeLoggedInCheckbox.anchors.top = steamInfoText.bottom; + loginButton.width = (passwordField.width - hifi.dimensions.contentSpacing.x) / 2; + loginButton.anchors.right = emailField.right; + } else { + loginButton.anchors.left = emailField.left; + } loginContainer.visible = true; } @@ -102,7 +110,7 @@ Item { height: banner.height anchors { bottom: loginContainer.top - bottomMargin: 0.125 * parent.height + bottomMargin: 0.07 * parent.height } Image { id: banner @@ -152,6 +160,7 @@ Item { width: banner.width height: linkAccountBody.textFieldHeight font.pixelSize: linkAccountBody.textFieldFontSize + styleRenderType: Text.QtRendering anchors { top: parent.top topMargin: loginErrorMessage.height @@ -189,6 +198,7 @@ Item { width: banner.width height: linkAccountBody.textFieldHeight font.pixelSize: linkAccountBody.textFieldFontSize + styleRenderType: Text.QtRendering placeholderText: "Password" activeFocusOnPress: true echoMode: passwordFieldMouseArea.showPassword ? TextInput.Normal : TextInput.Password @@ -269,16 +279,30 @@ Item { } onCheckedChanged: { Settings.setValue("keepMeLoggedIn", checked); - if (checked) { - Settings.setValue("keepMeLoggedIn/savedUsername", Account.username); - var savedUsername = Settings.getValue("keepMeLoggedIn/savedUsername", ""); - emailField.text = savedUsername === "Unknown user" ? "" : savedUsername; - } else { - Settings.setValue("keepMeLoggedIn/savedUsername", ""); - } } Component.onDestruction: { Settings.setValue("keepMeLoggedIn", checked); + if (checked) { + Settings.setValue("keepMeLoggedIn/savedUsername", emailField.text); + } + } + } + HifiControlsUit.Button { + id: cancelButton + width: (passwordField.width - hifi.dimensions.contentSpacing.x) / 2; + height: d.minHeightButton + text: qsTr("Cancel") + fontFamily: linkAccountBody.fontFamily + fontSize: linkAccountBody.fontSize + fontBold: linkAccountBody.fontBold + color: hifi.buttons.noneBorderlessWhite; + visible: linkAccountBody.linkSteam + anchors { + top: keepMeLoggedInCheckbox.bottom + topMargin: hifi.dimensions.contentSpacing.y + } + onClicked: { + bodyLoader.setSource("CompleteProfileBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "withSteam": linkAccountBody.withSteam, "errorString": errorString }); } } HifiControlsUit.Button { @@ -292,22 +316,38 @@ Item { anchors { top: keepMeLoggedInCheckbox.bottom topMargin: hifi.dimensions.contentSpacing.y - left: emailField.left } onClicked: { linkAccountBody.login() } } + Text { + id: steamInfoText + visible: linkAccountBody.linkSteam + anchors { + top: loginButton.bottom + topMargin: hifi.dimensions.contentSpacing.y + left: emailField.left + } + + font.family: linkAccountBody.fontFamily + font.pixelSize: linkAccountBody.textFieldFontSize + color: "white" + text: qsTr("Your Steam account information will not be exposed to others."); + verticalAlignment: Text.AlignVCenter + horizontalAlignment: Text.AlignHCenter + } HifiStylesUit.ShortcutText { id: cantAccessText z: 10 + visible: !linkAccountBody.linkSteam anchors { top: loginButton.bottom topMargin: hifi.dimensions.contentSpacing.y left: emailField.left } font.family: linkAccountBody.fontFamily - font.pixelSize: 18 + font.pixelSize: linkAccountBody.textFieldFontSize text: " Can't access your account?" @@ -349,6 +389,10 @@ Item { "withSteam": linkAccountBody.withSteam, "withOculus": linkAccountBody.withOculus, "fromBody": "LinkAccountBody" }); } Component.onCompleted: { + if (linkAccountBody.linkSteam) { + continueButton.visible = false; + return; + } if (loginDialog.isOculusStoreRunning()) { continueButton.text = qsTr("CONTINUE WITH OCULUS"); continueButton.buttonGlyph = hifi.glyphs.oculus; @@ -366,10 +410,11 @@ Item { id: signUpContainer width: loginContainer.width height: signUpTextMetrics.height + visible: !linkAccountBody.linkSteam anchors { left: loginContainer.left top: loginContainer.bottom - // topMargin: 0.25 * parent.height + topMargin: 0.05 * parent.height } TextMetrics { id: signUpTextMetrics @@ -406,7 +451,7 @@ Item { onLinkActivated: { Tablet.playSound(TabletEnums.ButtonClick); bodyLoader.setSource("SignUpBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, - "errorString": "" }); + "errorString": "", "linkSteam": linkAccountBody.linkSteam }); } } } @@ -430,7 +475,7 @@ Item { fontFamily: linkAccountBody.fontFamily fontSize: linkAccountBody.fontSize fontBold: linkAccountBody.fontBold - visible: loginDialog.getLoginDialogPoppedUp() + visible: loginDialog.getLoginDialogPoppedUp() && !linkAccountBody.linkSteam; onClicked: { if (loginDialog.getLoginDialogPoppedUp()) { console.log("[ENCOURAGELOGINDIALOG]: user dismissed login screen") @@ -464,11 +509,11 @@ Item { case Qt.Key_Return: event.accepted = true; Settings.setValue("keepMeLoggedIn/savedUsername", emailField.text); - linkAccountBody.login(); - break; - case Qt.Key_Escape: - event.accepted = true; - root.tryDestroy(); + if (linkAccountBody.linkSteam) { + linkAccountBody.linkSteam(); + } else { + linkAccountBody.login(); + } break; } } diff --git a/interface/resources/qml/LoginDialog/LoggingInBody.qml b/interface/resources/qml/LoginDialog/LoggingInBody.qml index a594e7ed17..92d5113251 100644 --- a/interface/resources/qml/LoginDialog/LoggingInBody.qml +++ b/interface/resources/qml/LoginDialog/LoggingInBody.qml @@ -130,7 +130,7 @@ Item { height: banner.height anchors { top: parent.top - topMargin: 85 + topMargin: 0.18 * parent.height } Image { id: banner @@ -260,8 +260,8 @@ Item { var errorString = ""; if (loggingInBody.withSteam) { loggingInGlyph.visible = false; - errorString = "Your Steam authentication has failed. Please make sure you are logged into Steam and try again." - bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "errorString": errorString }); + errorString = "Your Steam authentication has failed. Please make sure you are logged into Steam and try again."; + bodyLoader.setSource("CompleteProfileBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "withSteam": loggingInBody.withSteam, "errorString": errorString }); } else if (loggingInBody.withOculus) { loggingInGlyph.visible = false; errorString = "Your Oculus authentication has failed. Please make sure you are logged into Oculus and try again." @@ -269,11 +269,7 @@ Item { } else { errorString = "Username or password is incorrect."; - if (loginDialog.isLogIn && loggingInBody.withSteam) { - bodyLoader.setSource("CompleteProfileBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); - } else { - bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "errorString": errorString }); - } + bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "errorString": errorString }); } } } diff --git a/interface/resources/qml/LoginDialog/SignUpBody.qml b/interface/resources/qml/LoginDialog/SignUpBody.qml index bd50714843..81e35256d8 100644 --- a/interface/resources/qml/LoginDialog/SignUpBody.qml +++ b/interface/resources/qml/LoginDialog/SignUpBody.qml @@ -37,6 +37,7 @@ Item { onKeyboardRaisedChanged: d.resize(); property string errorString: errorString + property bool linkSteam: linkSteam QtObject { id: d @@ -44,7 +45,6 @@ Item { readonly property int minWidthButton: !root.isTablet ? 256 : 174 property int maxWidth: root.isTablet ? 1280 : root.width readonly property int minHeight: 120 - // readonly property int minHeightButton: !root.isTablet ? 56 : 42 readonly property int minHeightButton: 36 property int maxHeight: root.isTablet ? 720 : root.height @@ -110,7 +110,7 @@ Item { height: banner.height anchors { bottom: loginContainer.top - bottomMargin: 0.125 * parent.height + bottomMargin: 0.07 * parent.height } Image { id: banner @@ -163,6 +163,7 @@ Item { height: signUpBody.textFieldHeight placeholderText: "Username" font.pixelSize: signUpBody.textFieldFontSize + styleRenderType: Text.QtRendering anchors { top: parent.top topMargin: loginErrorMessage.height @@ -210,6 +211,7 @@ Item { } placeholderText: "Username or Email" font.pixelSize: signUpBody.textFieldFontSize + styleRenderType: Text.QtRendering activeFocusOnPress: true Keys.onPressed: { switch (event.key) { @@ -248,6 +250,7 @@ Item { height: signUpBody.textFieldHeight placeholderText: "Password" font.pixelSize: signUpBody.textFieldFontSize + styleRenderType: Text.QtRendering activeFocusOnPress: true echoMode: passwordFieldMouseArea.showPassword ? TextInput.Normal : TextInput.Password anchors { @@ -336,16 +339,12 @@ Item { } onCheckedChanged: { Settings.setValue("keepMeLoggedIn", checked); - if (checked) { - Settings.setValue("keepMeLoggedIn/savedUsername", Account.username); - var savedUsername = Settings.getValue("keepMeLoggedIn/savedUsername", ""); - usernameField.text = savedUsername === "Unknown user" ? "" : savedUsername; - } else { - Settings.setValue("keepMeLoggedIn/savedUsername", ""); - } } Component.onDestruction: { Settings.setValue("keepMeLoggedIn", checked); + if (checked) { + Settings.setValue("keepMeLoggedIn/savedUsername", emailField.text); + } } } @@ -370,7 +369,7 @@ Item { fontSize: signUpBody.fontSize fontBold: signUpBody.fontBold onClicked: { - bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); + bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "linkSteam": signUpBody.linkSteam }); } } HifiControlsUit.Button { diff --git a/interface/resources/qml/LoginDialog/UsernameCollisionBody.qml b/interface/resources/qml/LoginDialog/UsernameCollisionBody.qml index 2771deaf05..8e9e04c9d0 100644 --- a/interface/resources/qml/LoginDialog/UsernameCollisionBody.qml +++ b/interface/resources/qml/LoginDialog/UsernameCollisionBody.qml @@ -29,8 +29,7 @@ Item { function create() { mainTextContainer.visible = false - loginDialog.createAccountFromSteam(textField.text) - bodyLoader.setSource("LoggingInBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "withSteam": true, "fromBody": "UsernameCollisionBody" }); + loginDialog.createAccountFromSteam(textField.text); } property bool keyboardEnabled: false @@ -45,7 +44,6 @@ Item { readonly property int minWidthButton: !root.isTablet ? 256 : 174 property int maxWidth: root.isTablet ? 1280 : root.width readonly property int minHeight: 120 - // readonly property int minHeightButton: !root.isTablet ? 56 : 42 readonly property int minHeightButton: 36 property int maxHeight: root.isTablet ? 720 : root.height @@ -84,7 +82,7 @@ Item { height: banner.height anchors { top: parent.top - topMargin: 85 + topMargin: 0.18 * parent.height } Image { id: banner @@ -110,7 +108,7 @@ Item { } font.family: usernameCollisionBody.fontFamily - font.pixelSize: usernameCollisionBody.fontSize - 10 + font.pixelSize: usernameCollisionBody.fontSize font.bold: usernameCollisionBody.fontBold text: qsTr("Your Steam username is not available.") wrapMode: Text.WordWrap @@ -130,7 +128,8 @@ Item { topMargin: hifi.dimensions.contentSpacing.y } font.family: "Fira Sans" - font.pixelSize: usernameCollisionBody.fontSize - 10 + font.pixelSize: usernameCollisionBody.fontSize + styleRenderType: Text.QtRendering font.bold: usernameCollisionBody.fontBold width: banner.width @@ -170,7 +169,7 @@ Item { Item { id: buttons - width: Math.max(banner.width, cancelContainer.width + profileButton.width) + width: banner.width height: d.minHeightButton anchors { top: textField.bottom @@ -179,45 +178,24 @@ Item { leftMargin: (parent.width - banner.width) / 2 } - Item { - id: cancelContainer - width: cancelText.width - height: d.minHeightButton + HifiControlsUit.Button { + id: cancelButton anchors { top: parent.top left: parent.left } - Text { - id: cancelText - text: qsTr("Cancel"); + width: (parent.width - hifi.dimensions.contentSpacing.x) / 2 + height: d.minHeightButton - lineHeight: 1 - color: "white" - font.family: usernameCollisionBody.fontFamily - font.pixelSize: usernameCollisionBody.fontSize - font.capitalization: Font.AllUppercase; - font.bold: usernameCollisionBody.fontBold - lineHeightMode: Text.ProportionalHeight - anchors.centerIn: parent + text: qsTr("CANCEL") + color: hifi.buttons.noneBorderlessWhite + + fontFamily: usernameCollisionBody.fontFamily + fontSize: usernameCollisionBody.fontSize + fontBold: usernameCollisionBody.fontBold + onClicked: { + bodyLoader.setSource("CompleteProfileBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); } - MouseArea { - id: cancelArea - anchors.fill: parent - acceptedButtons: Qt.LeftButton - hoverEnabled: true - onEntered: { - Tablet.playSound(TabletEnums.ButtonHover); - } - onClicked: { - Tablet.playSound(TabletEnums.ButtonClick); - bodyLoader.setSource("LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); - } - } - } - TextMetrics { - id: profileButtonTextMetrics - font: cancelText.font - text: qsTr("CREATE YOUR PROFILE") } HifiControlsUit.Button { id: profileButton @@ -225,7 +203,7 @@ Item { top: parent.top right: parent.right } - width: Math.max(profileButtonTextMetrics.width + 2 * hifi.dimensions.contentSpacing.x, d.minWidthButton) + width: (parent.width - hifi.dimensions.contentSpacing.x) / 2 height: d.minHeightButton text: qsTr("Create your profile") @@ -241,23 +219,15 @@ Item { } } - Component.onCompleted: { - //dont rise local keyboard - keyboardEnabled = !root.isTablet && HMD.active; - //but rise Tablet's one instead for Tablet interface - if (root.isTablet || root.isOverlay) { - root.keyboardEnabled = HMD.active; - root.keyboardRaised = Qt.binding( function() { return keyboardRaised; }) - } - - root.text = ""; - d.resize(); - textField.focus = true; - if (usernameCollisionBody.errorString !== "") { - mainTextContainer.visible = true; - mainTextContainer.text = usernameCollisionBody.errorString; - } - } + // Component.onCompleted: { + // root.text = ""; + // d.resize(); + // textField.focus = true; + // if (usernameCollisionBody.errorString !== "") { + // mainTextContainer.visible = true; + // mainTextContainer.text = usernameCollisionBody.errorString; + // } + // } Connections { target: loginDialog diff --git a/interface/resources/qml/OverlayLoginDialog.qml b/interface/resources/qml/OverlayLoginDialog.qml index 566360972f..0bf01ba7e1 100644 --- a/interface/resources/qml/OverlayLoginDialog.qml +++ b/interface/resources/qml/OverlayLoginDialog.qml @@ -121,6 +121,6 @@ FocusScope { Component.onCompleted: { keyboardTimer.start(); - bodyLoader.setSource("LoginDialog/LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "errorString": ""}); + bodyLoader.setSource("LoginDialog/LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "linkSteam": false }); } } diff --git a/interface/resources/qml/controlsUit/TextField.qml b/interface/resources/qml/controlsUit/TextField.qml index d78f3a1340..1d47126cd1 100644 --- a/interface/resources/qml/controlsUit/TextField.qml +++ b/interface/resources/qml/controlsUit/TextField.qml @@ -31,6 +31,7 @@ TextField { property bool hasClearButton: false; property string leftPermanentGlyph: ""; property string centerPlaceholderGlyph: ""; + property int styleRenderType: Text.NativeRendering placeholderText: textField.placeholderText @@ -44,8 +45,8 @@ TextField { // workaround for https://bugreports.qt.io/browse/QTBUG-49297 Keys.onPressed: { switch (event.key) { - case Qt.Key_Return: - case Qt.Key_Enter: + case Qt.Key_Return: + case Qt.Key_Enter: event.accepted = true; // emit accepted signal manually @@ -156,6 +157,7 @@ TextField { selectionColor: hifi.colors.primaryHighlight padding.left: hasRoundedBorder ? textField.height / 2 : ((isSearchField || textField.leftPermanentGlyph !== "") ? textField.height - 2 : 0) + hifi.dimensions.textPadding padding.right: (hasClearButton ? textField.height - 2 : 0) + hifi.dimensions.textPadding + renderType: textField.styleRenderType } HifiControls.Label { diff --git a/interface/resources/qml/dialogs/TabletLoginDialog.qml b/interface/resources/qml/dialogs/TabletLoginDialog.qml index 23ed4886b3..8ce5fd5a2a 100644 --- a/interface/resources/qml/dialogs/TabletLoginDialog.qml +++ b/interface/resources/qml/dialogs/TabletLoginDialog.qml @@ -143,7 +143,7 @@ FocusScope { } Component.onCompleted: { - bodyLoader.setSource("../LoginDialog/LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader }); keyboardTimer.start(); + bodyLoader.setSource("../LoginDialog/LinkAccountBody.qml", { "loginDialog": loginDialog, "root": root, "bodyLoader": bodyLoader, "linkSteam": false }); } }