Improve first-run UX
- Replace LoginPage with step-by-step approach to support different login flows - Implement login using SSO
This commit is contained in:
42
imports/NeoChat/Component/Login/Sso.qml
Normal file
42
imports/NeoChat/Component/Login/Sso.qml
Normal file
@@ -0,0 +1,42 @@
|
||||
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2020 Tobias Fella <fella@posteo.de>
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-3.0-only
|
||||
*/
|
||||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.12 as QQC2
|
||||
import QtQuick.Layouts 1.12
|
||||
|
||||
import org.kde.neochat 1.0
|
||||
|
||||
import NeoChat.Component 1.0
|
||||
|
||||
import org.kde.kirigami 2.12 as Kirigami
|
||||
|
||||
LoginStep {
|
||||
id: root
|
||||
|
||||
title: i18nc("@title", "Login")
|
||||
message: i18n("Login with single sign-on")
|
||||
|
||||
Kirigami.FormLayout {
|
||||
Connections {
|
||||
target: LoginHelper
|
||||
onSsoUrlChanged: {
|
||||
Qt.openUrlExternally(LoginHelper.ssoUrl)
|
||||
}
|
||||
onConnected: proccessed("qrc:/imports/NeoChat/Component/Login/Loading.qml")
|
||||
}
|
||||
|
||||
QQC2.Button {
|
||||
text: i18n("Login")
|
||||
onClicked: {
|
||||
LoginHelper.loginWithSso()
|
||||
root.showMessage(i18n("Complete the authentification steps in your browser"))
|
||||
}
|
||||
Component.onCompleted: forceActiveFocus()
|
||||
Keys.onReturnPressed: clicked()
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user