linux.x86.linphone/Linphone/view/Page/Login/LoginPage.qml
Julien Wadel a43430fa34 Fix crashes on SafeConnection.
Display missed notifications and fit text size from content.
Add account from profile menu and display Login Page with back button.
Default account selection and change avatar from accounts list.
Remove deprecated function on Friends DB.
Return username by default on display name computation.
Update SDK.
2023-12-06 10:10:08 +01:00

88 lines
1.8 KiB
QML

import QtQuick 2.15
import QtQuick.Layouts 1.0
import QtQuick.Controls as Control
import Linphone
LoginLayout {
id: mainItem
property bool showBackButton: false
signal goBack()
signal useSIPButtonClicked()
signal goToRegister()
signal connectionSucceed()
titleContent: RowLayout {
Control.Button {
Layout.preferredHeight: 40 * DefaultStyle.dp
Layout.preferredWidth: height
visible: mainItem.showBackButton
icon.width: width
icon.height: height
icon.source: AppIcons.returnArrow
background: Rectangle {
color: "transparent"
}
onClicked: {
console.debug("[LoginLayout] User: return")
mainItem.goBack()
}
}
Image {
fillMode: Image.PreserveAspectFit
source: AppIcons.profile
}
Text {
text: "Login"
font.pointSize: DefaultStyle.title2FontPointSize
font.bold: true
scaleLettersFactor: 1.1
}
Item {
Layout.fillWidth: true
}
Text {
Layout.rightMargin: 15 * DefaultStyle.dp
text: "No account yet ?"
font.pointSize: DefaultStyle.indicatorMessageTextSize
}
Button {
Layout.alignment: Qt.AlignRight
inversedColors: true
text: "Register"
onClicked: {
console.debug("[LoginPage] User: go to register")
mainItem.goToRegister()
}
}
}
centerContent: ColumnLayout {
RowLayout {
ColumnLayout {
LoginForm {
onConnectionSucceed: mainItem.connectionSucceed()
}
Button {
Layout.topMargin: 40 * DefaultStyle.dp
inversedColors: true
text: "Use SIP Account"
onClicked: {mainItem.useSIPButtonClicked()}
}
}
Item {
Layout.fillWidth: true
}
Image {
Layout.rightMargin: 40 * DefaultStyle.dp
Layout.preferredWidth: 300 * DefaultStyle.dp
fillMode: Image.PreserveAspectFit
source: AppIcons.loginImage
}
}
Item {
Layout.fillHeight: true
}
}
}