mirror of
https://github.com/savoirfairelinux/jami-client-qt.git
synced 2025-12-18 08:35:26 +08:00
wizardview: UI refinement
Partially optimized the wizardview related UI code and UI performance. Note: Since some common components are changed, UI changes in settings view are also required to keep the original style. Gitlab: #59 Change-Id: Ib77868bac3a6479700e81f3361b67a8403725661
This commit is contained in:
4
qml.qrc
4
qml.qrc
@@ -38,7 +38,7 @@
|
|||||||
<file>src/commoncomponents/DeleteAccountDialog.qml</file>
|
<file>src/commoncomponents/DeleteAccountDialog.qml</file>
|
||||||
<file>src/commoncomponents/MessageBox.qml</file>
|
<file>src/commoncomponents/MessageBox.qml</file>
|
||||||
<file>src/wizardview/WizardView.qml</file>
|
<file>src/wizardview/WizardView.qml</file>
|
||||||
<file>src/wizardview/components/WelcomePageLayout.qml</file>
|
<file>src/wizardview/components/WelcomePage.qml</file>
|
||||||
<file>src/wizardview/components/CreateAccountPage.qml</file>
|
<file>src/wizardview/components/CreateAccountPage.qml</file>
|
||||||
<file>src/wizardview/components/CreateSIPAccountPage.qml</file>
|
<file>src/wizardview/components/CreateSIPAccountPage.qml</file>
|
||||||
<file>src/wizardview/components/ImportFromBackupPage.qml</file>
|
<file>src/wizardview/components/ImportFromBackupPage.qml</file>
|
||||||
@@ -109,5 +109,7 @@
|
|||||||
<file>src/commoncomponents/BaseContextMenu.qml</file>
|
<file>src/commoncomponents/BaseContextMenu.qml</file>
|
||||||
<file>src/mainview/components/AccountPresenceCycle.qml</file>
|
<file>src/mainview/components/AccountPresenceCycle.qml</file>
|
||||||
<file>src/commoncomponents/Scaffold.qml</file>
|
<file>src/commoncomponents/Scaffold.qml</file>
|
||||||
|
<file>src/constant/JamiQmlUtils.qml</file>
|
||||||
|
<file>src/wizardview/components/AccountCreationStepIndicator.qml</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
@@ -35,8 +35,6 @@
|
|||||||
<file>images/icons/ic_arrow_forward_white_48dp_2x.png</file>
|
<file>images/icons/ic_arrow_forward_white_48dp_2x.png</file>
|
||||||
<file>images/icons/ic_arrow_tab_next_black_9dp_2x.png</file>
|
<file>images/icons/ic_arrow_tab_next_black_9dp_2x.png</file>
|
||||||
<file>images/icons/ic_arrow_tab_previous_black_9dp_2x.png</file>
|
<file>images/icons/ic_arrow_tab_previous_black_9dp_2x.png</file>
|
||||||
<file>images/icons/check_box-24px.svg</file>
|
|
||||||
<file>images/icons/check_box_outline_blank-24px.svg</file>
|
|
||||||
<file>images/icons/ic_block_24px.svg</file>
|
<file>images/icons/ic_block_24px.svg</file>
|
||||||
<file>images/icons/delete_forever-24px.svg</file>
|
<file>images/icons/delete_forever-24px.svg</file>
|
||||||
<file>images/icons/phone_forwarded-24px.svg</file>
|
<file>images/icons/phone_forwarded-24px.svg</file>
|
||||||
|
|||||||
@@ -93,13 +93,14 @@ ApplicationWindow {
|
|||||||
|
|
||||||
title: "Jami"
|
title: "Jami"
|
||||||
|
|
||||||
minimumWidth: 400
|
minimumWidth: 500
|
||||||
minimumHeight: 600
|
minimumHeight: 600
|
||||||
|
|
||||||
WizardView {
|
WizardView {
|
||||||
id: wizardViewForApplicationStart
|
id: wizardViewForApplicationStart
|
||||||
|
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
|
|
||||||
onNeedToShowMainViewWindow: {
|
onNeedToShowMainViewWindow: {
|
||||||
mainViewLoader.newAddedAccountIndex = accountIndex
|
mainViewLoader.newAddedAccountIndex = accountIndex
|
||||||
if (mainViewLoader.source.toString() !== "qrc:/src/mainview/MainView.qml") {
|
if (mainViewLoader.source.toString() !== "qrc:/src/mainview/MainView.qml") {
|
||||||
@@ -146,7 +147,7 @@ ApplicationWindow {
|
|||||||
Connections {
|
Connections {
|
||||||
target: ClientWrapper.lrcInstance
|
target: ClientWrapper.lrcInstance
|
||||||
|
|
||||||
onRestoreAppRequested: {
|
function onRestoreAppRequested() {
|
||||||
if (mainViewLoader.item)
|
if (mainViewLoader.item)
|
||||||
mainViewLoader.item.show()
|
mainViewLoader.item.show()
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -17,7 +17,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import QtQuick 2.14
|
import QtQuick 2.14
|
||||||
import QtQuick.Layouts 1.3
|
|
||||||
import QtQuick.Controls 2.14
|
import QtQuick.Controls 2.14
|
||||||
import QtGraphicalEffects 1.15
|
import QtGraphicalEffects 1.15
|
||||||
|
|
||||||
@@ -31,9 +30,8 @@ Button {
|
|||||||
property var pressedColor: undefined
|
property var pressedColor: undefined
|
||||||
property var outlined: false
|
property var outlined: false
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignCenter
|
property var preferredWidth: 400
|
||||||
Layout.preferredWidth: 400
|
property var preferredHeight: 36
|
||||||
Layout.preferredHeight: 36
|
|
||||||
|
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
|
|||||||
@@ -48,17 +48,6 @@ TextField {
|
|||||||
|
|
||||||
signal imageClicked
|
signal imageClicked
|
||||||
|
|
||||||
Layout.minimumHeight: fieldLayoutHeight
|
|
||||||
Layout.preferredHeight: fieldLayoutHeight
|
|
||||||
Layout.maximumHeight: fieldLayoutHeight
|
|
||||||
|
|
||||||
Layout.minimumWidth: fieldLayoutWidth
|
|
||||||
Layout.maximumWidth: fieldLayoutWidth
|
|
||||||
Layout.preferredWidth: fieldLayoutWidth
|
|
||||||
|
|
||||||
Layout.fillWidth: layoutFillwidth
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
wrapMode: Text.Wrap
|
wrapMode: Text.Wrap
|
||||||
readOnly: false
|
readOnly: false
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ ColumnLayout{
|
|||||||
property string imgBase64: ""
|
property string imgBase64: ""
|
||||||
property string fileName: ""
|
property string fileName: ""
|
||||||
|
|
||||||
|
readonly property int preferredWidth: boothWidth + buttonsRowLayout.height
|
||||||
property int boothWidth: 224
|
property int boothWidth: 224
|
||||||
|
|
||||||
signal imageAcquired
|
signal imageAcquired
|
||||||
@@ -73,27 +74,13 @@ ColumnLayout{
|
|||||||
|
|
||||||
spacing: 0
|
spacing: 0
|
||||||
|
|
||||||
Layout.maximumWidth: boothWidth
|
|
||||||
Layout.preferredWidth: boothWidth
|
|
||||||
Layout.minimumWidth: boothWidth
|
|
||||||
|
|
||||||
Layout.maximumHeight: 0
|
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
Label{
|
Label{
|
||||||
id: avatarLabel
|
id: avatarLabel
|
||||||
|
|
||||||
visible: !takePhotoState
|
visible: !takePhotoState
|
||||||
|
|
||||||
Layout.maximumWidth: boothWidth
|
|
||||||
Layout.preferredWidth: boothWidth
|
Layout.preferredWidth: boothWidth
|
||||||
Layout.minimumWidth: boothWidth
|
|
||||||
|
|
||||||
Layout.maximumHeight: boothWidth
|
|
||||||
Layout.preferredHeight: boothWidth
|
Layout.preferredHeight: boothWidth
|
||||||
Layout.minimumHeight: boothWidth
|
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
@@ -140,13 +127,8 @@ ColumnLayout{
|
|||||||
focus: visible
|
focus: visible
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
Layout.maximumWidth: boothWidth
|
|
||||||
Layout.preferredWidth: boothWidth
|
Layout.preferredWidth: boothWidth
|
||||||
Layout.minimumWidth: boothWidth
|
|
||||||
|
|
||||||
Layout.maximumHeight: boothWidth
|
|
||||||
Layout.preferredHeight: boothWidth
|
Layout.preferredHeight: boothWidth
|
||||||
Layout.minimumHeight: boothWidth
|
|
||||||
|
|
||||||
layer.enabled: true
|
layer.enabled: true
|
||||||
layer.effect: OpacityMask {
|
layer.effect: OpacityMask {
|
||||||
@@ -177,16 +159,15 @@ ColumnLayout{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
RowLayout{
|
RowLayout{
|
||||||
Layout.fillWidth: true
|
id: buttonsRowLayout
|
||||||
Layout.minimumHeight: 30
|
|
||||||
Layout.maximumHeight: 30
|
|
||||||
|
|
||||||
Item{
|
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
Layout.fillHeight: true
|
Layout.alignment: Qt.AlignHCenter
|
||||||
}
|
Layout.preferredHeight: 30
|
||||||
|
Layout.topMargin: 5
|
||||||
|
|
||||||
|
spacing: 15
|
||||||
|
|
||||||
HoverableButton {
|
HoverableButton {
|
||||||
id: takePhotoButton
|
id: takePhotoButton
|
||||||
@@ -195,13 +176,9 @@ ColumnLayout{
|
|||||||
property string addPhotoIconUrl: "qrc:/images/icons/round-add_a_photo-24px.svg"
|
property string addPhotoIconUrl: "qrc:/images/icons/round-add_a_photo-24px.svg"
|
||||||
property string refreshIconUrl: "qrc:/images/icons/baseline-refresh-24px.svg"
|
property string refreshIconUrl: "qrc:/images/icons/baseline-refresh-24px.svg"
|
||||||
|
|
||||||
Layout.maximumWidth: 30
|
|
||||||
Layout.preferredWidth: 30
|
Layout.preferredWidth: 30
|
||||||
Layout.minimumWidth: 30
|
|
||||||
|
|
||||||
Layout.minimumHeight: 30
|
|
||||||
Layout.preferredHeight: 30
|
Layout.preferredHeight: 30
|
||||||
Layout.maximumHeight: 30
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
text: ""
|
text: ""
|
||||||
font.pointSize: 10
|
font.pointSize: 10
|
||||||
@@ -244,24 +221,12 @@ ColumnLayout{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Item{
|
|
||||||
Layout.fillHeight: true
|
|
||||||
|
|
||||||
Layout.minimumWidth: 6
|
|
||||||
Layout.preferredWidth: 6
|
|
||||||
Layout.maximumWidth: 6
|
|
||||||
}
|
|
||||||
|
|
||||||
HoverableButton {
|
HoverableButton {
|
||||||
id: importButton
|
id: importButton
|
||||||
|
|
||||||
Layout.maximumWidth: 30
|
|
||||||
Layout.preferredWidth: 30
|
Layout.preferredWidth: 30
|
||||||
Layout.minimumWidth: 30
|
|
||||||
|
|
||||||
Layout.minimumHeight: 30
|
|
||||||
Layout.preferredHeight: 30
|
Layout.preferredHeight: 30
|
||||||
Layout.maximumHeight: 30
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
text: ""
|
text: ""
|
||||||
font.pointSize: 10
|
font.pointSize: 10
|
||||||
@@ -276,10 +241,5 @@ ColumnLayout{
|
|||||||
importFromFileToAvatar_Dialog.open()
|
importFromFileToAvatar_Dialog.open()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Item{
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.fillHeight: true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
35
src/constant/JamiQmlUtils.qml
Normal file
35
src/constant/JamiQmlUtils.qml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2020 by Savoir-faire Linux
|
||||||
|
* Author: Mingrui Zhang <mingrui.zhang@savoirfairelinux.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// JamiQmlUtils as a singleton is to provide global property entry
|
||||||
|
pragma Singleton
|
||||||
|
|
||||||
|
import QtQuick 2.14
|
||||||
|
|
||||||
|
Item {
|
||||||
|
TextMetrics {
|
||||||
|
id: globalTextMetrics
|
||||||
|
}
|
||||||
|
|
||||||
|
function getTextBoundingRect(font, text) {
|
||||||
|
globalTextMetrics.font = font
|
||||||
|
globalTextMetrics.text = text
|
||||||
|
|
||||||
|
return globalTextMetrics.boundingRect
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2020 by Savoir-faire Linux
|
* Copyright (C) 2020 by Savoir-faire Linux
|
||||||
* Author: Mingrui Zhang <mingrui.zhang@savoirfairelinux.com>
|
* Author: Mingrui Zhang <mingrui.zhang@savoirfairelinux.com>
|
||||||
@@ -17,21 +16,13 @@
|
|||||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// JamiTheme as a singleton is to provide global theme property entry.
|
||||||
/*
|
|
||||||
* JamiTheme as a singleton is to provide global property entry
|
|
||||||
* https://doc.qt.io/qt-5/qqmlengine.html#qmlRegisterSingletonType-3
|
|
||||||
*/
|
|
||||||
pragma Singleton
|
pragma Singleton
|
||||||
|
|
||||||
import QtQuick 2.14
|
import QtQuick 2.14
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
|
// Color strings.
|
||||||
|
|
||||||
/*
|
|
||||||
* Color strings.
|
|
||||||
*/
|
|
||||||
property string hoverColor: "#c7c7c7"
|
property string hoverColor: "#c7c7c7"
|
||||||
property string pressColor: "#c0c0c0"
|
property string pressColor: "#c0c0c0"
|
||||||
property string releaseColor: "#e0e0e0"
|
property string releaseColor: "#e0e0e0"
|
||||||
@@ -83,9 +74,10 @@ Item {
|
|||||||
property string sipInputButtonHoverColor: "#4477aa"
|
property string sipInputButtonHoverColor: "#4477aa"
|
||||||
property string sipInputButtonPressColor: "#5588bb"
|
property string sipInputButtonPressColor: "#5588bb"
|
||||||
|
|
||||||
/*
|
property string accountCreationOtherStepColor: "grey"
|
||||||
* Font.
|
property string accountCreationCurrentStepColor: "#28b1ed"
|
||||||
*/
|
|
||||||
|
// Font.
|
||||||
property string faddedFontColor: "#c0c0c0"
|
property string faddedFontColor: "#c0c0c0"
|
||||||
property string faddedLastInteractionFontColor: "#505050"
|
property string faddedLastInteractionFontColor: "#505050"
|
||||||
|
|
||||||
@@ -102,10 +94,7 @@ Item {
|
|||||||
property int preferredFieldHeight: 32
|
property int preferredFieldHeight: 32
|
||||||
property int preferredMarginSize: 16
|
property int preferredMarginSize: 16
|
||||||
|
|
||||||
|
// Place holder text.
|
||||||
/*
|
|
||||||
* Place holder text.
|
|
||||||
*/
|
|
||||||
property string contactSearchBarPlaceHolderConversationText: qsTr("Find or start a conversation")
|
property string contactSearchBarPlaceHolderConversationText: qsTr("Find or start a conversation")
|
||||||
property string contactSearchBarPlaceHolderInivitionText: qsTr("Search your invitations")
|
property string contactSearchBarPlaceHolderInivitionText: qsTr("Search your invitations")
|
||||||
|
|
||||||
|
|||||||
@@ -128,10 +128,12 @@ void registerTypes()
|
|||||||
QML_REGISTERTYPE(PhotoboothPreviewRender, 1, 0)
|
QML_REGISTERTYPE(PhotoboothPreviewRender, 1, 0)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Adaptors - qmlRegisterSingletonType.
|
* Adaptors and qml singleton components - qmlRegisterSingletonType.
|
||||||
*/
|
*/
|
||||||
QML_REGISTERSINGLETONTYPE_URL(QStringLiteral("qrc:/src/constant/JamiTheme.qml"),
|
QML_REGISTERSINGLETONTYPE_URL(QStringLiteral("qrc:/src/constant/JamiTheme.qml"),
|
||||||
JamiTheme, 1, 0);
|
JamiTheme, 1, 0);
|
||||||
|
QML_REGISTERSINGLETONTYPE_URL(QStringLiteral("qrc:/src/constant/JamiQmlUtils.qml"),
|
||||||
|
JamiQmlUtils, 1, 0);
|
||||||
|
|
||||||
QML_REGISTERSINGLETONTYPE("net.jami.Models", CallAdapter, 1, 0);
|
QML_REGISTERSINGLETONTYPE("net.jami.Models", CallAdapter, 1, 0);
|
||||||
QML_REGISTERSINGLETONTYPE("net.jami.Models", MessagesAdapter, 1, 0);
|
QML_REGISTERSINGLETONTYPE("net.jami.Models", MessagesAdapter, 1, 0);
|
||||||
|
|||||||
@@ -418,13 +418,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnRingtoneSIP
|
id: btnRingtoneSIP
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -480,8 +476,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditVoiceMailDialCode
|
id: lineEditVoiceMailDialCode
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -619,12 +617,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnSIPCACert
|
id: btnSIPCACert
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -651,13 +646,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnSIPUserCert
|
id: btnSIPUserCert
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -684,13 +675,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnSIPPrivateKey
|
id: btnSIPPrivateKey
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -719,8 +706,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditSIPCertPassword
|
id: lineEditSIPCertPassword
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -853,8 +842,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: outgoingTLSServerNameLineEdit
|
id: outgoingTLSServerNameLineEdit
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -1059,8 +1050,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnAddressSIP
|
id: lineEditTurnAddressSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -1089,8 +1082,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnUsernameSIP
|
id: lineEditTurnUsernameSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -1118,8 +1113,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnPsswdSIP
|
id: lineEditTurnPsswdSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -1150,8 +1147,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnRealmSIP
|
id: lineEditTurnRealmSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -1195,8 +1194,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditSTUNAddressSIP
|
id: lineEditSTUNAddressSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -1279,8 +1280,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditSIPCustomAddress
|
id: lineEditSIPCustomAddress
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
|
|||||||
@@ -366,12 +366,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnRingtone
|
id: btnRingtone
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -436,8 +433,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditNameServer
|
id: lineEditNameServer
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -501,8 +500,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditProxy
|
id: lineEditProxy
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -539,8 +540,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditBootstrap
|
id: lineEditBootstrap
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -599,13 +602,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnCACert
|
id: btnCACert
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -632,13 +631,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnUserCert
|
id: btnUserCert
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -665,13 +660,9 @@ ColumnLayout {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnPrivateKey
|
id: btnPrivateKey
|
||||||
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
@@ -699,8 +690,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditCertPassword
|
id: lineEditCertPassword
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -798,8 +791,11 @@ ColumnLayout {
|
|||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnAddress
|
id: lineEditTurnAddress
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -832,8 +828,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnUsername
|
id: lineEditTurnUsername
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
@@ -864,11 +862,13 @@ ColumnLayout {
|
|||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditTurnPassword
|
id: lineEditTurnPassword
|
||||||
layer.mipmap: false
|
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
layer.mipmap: false
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -918,8 +918,10 @@ ColumnLayout {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: lineEditSTUNAddress
|
id: lineEditSTUNAddress
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
fieldLayoutHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
|
|||||||
@@ -575,12 +575,9 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: displayNameLineEdit
|
id: displayNameLineEdit
|
||||||
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -704,12 +701,10 @@ Rectangle {
|
|||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: currentRegisteredID
|
id: currentRegisteredID
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
placeholderText: { refreshVariable
|
placeholderText: { refreshVariable
|
||||||
var result = registeredIdNeedsSet ?
|
var result = registeredIdNeedsSet ?
|
||||||
@@ -779,6 +774,10 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: passwdPushButton
|
id: passwdPushButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
visible: SettingsAdapter.getAccountConfig_Manageruri() === ""
|
visible: SettingsAdapter.getAccountConfig_Manageruri() === ""
|
||||||
|
|
||||||
color: JamiTheme.buttonTintedBlack
|
color: JamiTheme.buttonTintedBlack
|
||||||
@@ -786,14 +785,6 @@ Rectangle {
|
|||||||
pressedColor: JamiTheme.buttonTintedBlackPressed
|
pressedColor: JamiTheme.buttonTintedBlackPressed
|
||||||
outlined: true
|
outlined: true
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.minimumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
toolTipText: ClientWrapper.accountAdaptor.hasPassword() ?
|
toolTipText: ClientWrapper.accountAdaptor.hasPassword() ?
|
||||||
qsTr("Change the current password") :
|
qsTr("Change the current password") :
|
||||||
qsTr("Currently no password, press this button to set a password")
|
qsTr("Currently no password, press this button to set a password")
|
||||||
@@ -810,6 +801,10 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnExportAccount
|
id: btnExportAccount
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
visible: SettingsAdapter.getAccountConfig_Manageruri() === ""
|
visible: SettingsAdapter.getAccountConfig_Manageruri() === ""
|
||||||
|
|
||||||
color: JamiTheme.buttonTintedBlack
|
color: JamiTheme.buttonTintedBlack
|
||||||
@@ -817,14 +812,6 @@ Rectangle {
|
|||||||
pressedColor: JamiTheme.buttonTintedBlackPressed
|
pressedColor: JamiTheme.buttonTintedBlackPressed
|
||||||
outlined: true
|
outlined: true
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.minimumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
toolTipText: qsTr("Press this button to export account to a .gz file")
|
toolTipText: qsTr("Press this button to export account to a .gz file")
|
||||||
text: qsTr("Export Account")
|
text: qsTr("Export Account")
|
||||||
|
|
||||||
@@ -838,18 +825,14 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: btnDeleteAccount
|
id: btnDeleteAccount
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
color: JamiTheme.buttonTintedRed
|
color: JamiTheme.buttonTintedRed
|
||||||
hoveredColor: JamiTheme.buttonTintedRedHovered
|
hoveredColor: JamiTheme.buttonTintedRedHovered
|
||||||
pressedColor: JamiTheme.buttonTintedRedPressed
|
pressedColor: JamiTheme.buttonTintedRedPressed
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.minimumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
toolTipText: qsTr("Press this button to delete this account")
|
toolTipText: qsTr("Press this button to delete this account")
|
||||||
text: qsTr("Delete Account")
|
text: qsTr("Delete Account")
|
||||||
|
|
||||||
@@ -918,15 +901,11 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: linkDevPushButton
|
id: linkDevPushButton
|
||||||
|
|
||||||
visible: SettingsAdapter.getAccountConfig_Manageruri() === ""
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.minimumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.alignment: Qt.AlignCenter
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
|
visible: SettingsAdapter.getAccountConfig_Manageruri() === ""
|
||||||
|
|
||||||
color: JamiTheme.buttonTintedBlack
|
color: JamiTheme.buttonTintedBlack
|
||||||
hoveredColor: JamiTheme.buttonTintedBlackHovered
|
hoveredColor: JamiTheme.buttonTintedBlackHovered
|
||||||
|
|||||||
@@ -232,12 +232,9 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: displaySIPNameLineEdit
|
id: displaySIPNameLineEdit
|
||||||
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -298,7 +295,9 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: usernameSIP
|
id: usernameSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize // Albert: buttonSize?
|
font.pointSize: JamiTheme.settingsFontSize // Albert: buttonSize?
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -306,10 +305,6 @@ Rectangle {
|
|||||||
horizontalAlignment: Text.AlignLeft
|
horizontalAlignment: Text.AlignLeft
|
||||||
verticalAlignment: Text.AlignVCenter
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
onEditingFinished: {
|
onEditingFinished: {
|
||||||
@@ -333,7 +328,9 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: hostnameSIP
|
id: hostnameSIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -341,10 +338,6 @@ Rectangle {
|
|||||||
horizontalAlignment: Text.AlignLeft
|
horizontalAlignment: Text.AlignLeft
|
||||||
verticalAlignment: Text.AlignVCenter
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
onEditingFinished: {
|
onEditingFinished: {
|
||||||
@@ -368,7 +361,9 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: proxySIP
|
id: proxySIP
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize // Albert
|
font.pointSize: JamiTheme.settingsFontSize // Albert
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -376,10 +371,6 @@ Rectangle {
|
|||||||
horizontalAlignment: Text.AlignLeft
|
horizontalAlignment: Text.AlignLeft
|
||||||
verticalAlignment: Text.AlignVCenter
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
onEditingFinished: {
|
onEditingFinished: {
|
||||||
@@ -403,7 +394,9 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: passSIPlineEdit
|
id: passSIPlineEdit
|
||||||
|
|
||||||
fieldLayoutWidth: preferredColumnWidth
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
|
||||||
font.pointSize: JamiTheme.settingsFontSize
|
font.pointSize: JamiTheme.settingsFontSize
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
@@ -412,10 +405,6 @@ Rectangle {
|
|||||||
horizontalAlignment: Text.AlignLeft
|
horizontalAlignment: Text.AlignLeft
|
||||||
verticalAlignment: Text.AlignVCenter
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
onEditingFinished: {
|
onEditingFinished: {
|
||||||
@@ -427,19 +416,14 @@ Rectangle {
|
|||||||
|
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
color: JamiTheme.buttonTintedRed
|
color: JamiTheme.buttonTintedRed
|
||||||
hoveredColor: JamiTheme.buttonTintedRedHovered
|
hoveredColor: JamiTheme.buttonTintedRedHovered
|
||||||
pressedColor: JamiTheme.buttonTintedRedPressed
|
pressedColor: JamiTheme.buttonTintedRedPressed
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
Layout.minimumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.preferredWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.maximumWidth: JamiTheme.preferredFieldWidth
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
toolTipText: qsTr("Press this button to delete this account")
|
toolTipText: qsTr("Press this button to delete this account")
|
||||||
text: qsTr("Delete Account")
|
text: qsTr("Delete Account")
|
||||||
|
|
||||||
|
|||||||
@@ -351,15 +351,9 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: downloadButton
|
id: downloadButton
|
||||||
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignRight
|
Layout.alignment: Qt.AlignRight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
toolTipText: qsTr("Press to choose download folder path")
|
toolTipText: qsTr("Press to choose download folder path")
|
||||||
text: downloadPath
|
text: downloadPath
|
||||||
@@ -518,15 +512,9 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: recordPathButton
|
id: recordPathButton
|
||||||
|
|
||||||
Layout.maximumWidth: preferredColumnWidth
|
|
||||||
Layout.preferredWidth: preferredColumnWidth
|
|
||||||
Layout.minimumWidth: preferredColumnWidth
|
|
||||||
|
|
||||||
Layout.minimumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
|
||||||
Layout.maximumHeight: JamiTheme.preferredFieldHeight
|
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignRight
|
Layout.alignment: Qt.AlignRight
|
||||||
|
Layout.preferredWidth: preferredColumnWidth
|
||||||
|
Layout.preferredHeight: JamiTheme.preferredFieldHeight
|
||||||
|
|
||||||
toolTipText: qsTr("Press to choose record folder path")
|
toolTipText: qsTr("Press to choose record folder path")
|
||||||
text: recordPath
|
text: recordPath
|
||||||
|
|||||||
@@ -121,7 +121,10 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: installButton
|
id: installButton
|
||||||
|
|
||||||
Layout.fillWidth: false
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
color: JamiTheme.buttonTintedBlack
|
color: JamiTheme.buttonTintedBlack
|
||||||
hoveredColor: JamiTheme.buttonTintedBlackHovered
|
hoveredColor: JamiTheme.buttonTintedBlackHovered
|
||||||
pressedColor: JamiTheme.buttonTintedBlackPressed
|
pressedColor: JamiTheme.buttonTintedBlackPressed
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ import "../constant"
|
|||||||
import "components"
|
import "components"
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
id: wizardViewWindow
|
id: root
|
||||||
|
|
||||||
enum Mode {
|
enum Mode {
|
||||||
CREATE,
|
CREATE,
|
||||||
@@ -48,6 +48,8 @@ Rectangle {
|
|||||||
SEARCHING
|
SEARCHING
|
||||||
}
|
}
|
||||||
|
|
||||||
|
readonly property int layoutSpacing: 12
|
||||||
|
|
||||||
property int textFontSize: 9
|
property int textFontSize: 9
|
||||||
property int wizardMode: WizardView.CREATE
|
property int wizardMode: WizardView.CREATE
|
||||||
property int addedAccountIndex: -1
|
property int addedAccountIndex: -1
|
||||||
@@ -66,8 +68,6 @@ Rectangle {
|
|||||||
signal wizardViewIsClosed
|
signal wizardViewIsClosed
|
||||||
|
|
||||||
visible: true
|
visible: true
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
changePageQML(controlPanelStackView.welcomePageStackId)
|
changePageQML(controlPanelStackView.welcomePageStackId)
|
||||||
@@ -148,9 +148,6 @@ Rectangle {
|
|||||||
registeredNameFoundConnection.enabled = true
|
registeredNameFoundConnection.enabled = true
|
||||||
} else if (pageIndex == controlPanelStackView.createSIPAccountPageId) {
|
} else if (pageIndex == controlPanelStackView.createSIPAccountPageId) {
|
||||||
createSIPAccountPage.initializeOnShowUp()
|
createSIPAccountPage.initializeOnShowUp()
|
||||||
btnNext.enabled = true
|
|
||||||
// start photo booth
|
|
||||||
createSIPAccountPage.startBooth()
|
|
||||||
} else if (pageIndex == controlPanelStackView.importFromDevicePageId) {
|
} else if (pageIndex == controlPanelStackView.importFromDevicePageId) {
|
||||||
importFromDevicePage.initializeOnShowUp()
|
importFromDevicePage.initializeOnShowUp()
|
||||||
} else if (pageIndex == controlPanelStackView.spinnerPageId) {
|
} else if (pageIndex == controlPanelStackView.spinnerPageId) {
|
||||||
@@ -158,11 +155,9 @@ Rectangle {
|
|||||||
createAccountPage.isToSetPassword_checkState_choosePasswordCheckBox = false
|
createAccountPage.isToSetPassword_checkState_choosePasswordCheckBox = false
|
||||||
} else if (pageIndex == controlPanelStackView.connectToAccountManagerPageId) {
|
} else if (pageIndex == controlPanelStackView.connectToAccountManagerPageId) {
|
||||||
connectToAccountManagerPage.initializeOnShowUp()
|
connectToAccountManagerPage.initializeOnShowUp()
|
||||||
btnNext.enabled = false
|
|
||||||
} else if (pageIndex == controlPanelStackView.importFromBackupPageId) {
|
} else if (pageIndex == controlPanelStackView.importFromBackupPageId) {
|
||||||
importFromBackupPage.clearAllTextFields()
|
importFromBackupPage.clearAllTextFields()
|
||||||
fileToImport = ""
|
fileToImport = ""
|
||||||
btnNext.enabled = false
|
|
||||||
} else if (pageIndex == controlPanelStackView.profilePageId) {
|
} else if (pageIndex == controlPanelStackView.profilePageId) {
|
||||||
profilePage.initializeOnShowUp()
|
profilePage.initializeOnShowUp()
|
||||||
profilePage.showBottom = showBottom
|
profilePage.showBottom = showBottom
|
||||||
@@ -203,16 +198,12 @@ Rectangle {
|
|||||||
onClicked: forceActiveFocus()
|
onClicked: forceActiveFocus()
|
||||||
}
|
}
|
||||||
|
|
||||||
ScrollView {
|
|
||||||
id: frame
|
|
||||||
clip: true
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
StackLayout {
|
StackLayout {
|
||||||
id: controlPanelStackView
|
id: controlPanelStackView
|
||||||
|
|
||||||
|
anchors.fill: parent
|
||||||
|
|
||||||
currentIndex: welcomePageStackId
|
currentIndex: welcomePageStackId
|
||||||
height: wizardView.height
|
|
||||||
width: wizardView.width
|
|
||||||
|
|
||||||
property int welcomePageStackId: 0
|
property int welcomePageStackId: 0
|
||||||
property int createAccountPageId: 1
|
property int createAccountPageId: 1
|
||||||
@@ -224,7 +215,7 @@ Rectangle {
|
|||||||
property int spinnerPageId: 7
|
property int spinnerPageId: 7
|
||||||
property int profilePageId: 8
|
property int profilePageId: 8
|
||||||
|
|
||||||
WelcomePageLayout {
|
WelcomePage {
|
||||||
// welcome page, index 0
|
// welcome page, index 0
|
||||||
id: welcomePage
|
id: welcomePage
|
||||||
|
|
||||||
@@ -433,7 +424,6 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
}
|
}
|
||||||
|
|||||||
46
src/wizardview/components/AccountCreationStepIndicator.qml
Normal file
46
src/wizardview/components/AccountCreationStepIndicator.qml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2020 by Savoir-faire Linux
|
||||||
|
* Author: Mingrui Zhang <mingrui.zhang@savoirfairelinux.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import QtQuick 2.14
|
||||||
|
import QtQuick.Layouts 1.3
|
||||||
|
import QtQuick.Controls 2.14
|
||||||
|
|
||||||
|
import "../../constant"
|
||||||
|
import "../../commoncomponents"
|
||||||
|
|
||||||
|
Row {
|
||||||
|
id: root
|
||||||
|
|
||||||
|
property int steps: 0
|
||||||
|
property int currentStep: 0
|
||||||
|
|
||||||
|
Repeater {
|
||||||
|
model: steps
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
color: {
|
||||||
|
if (modelData === currentStep - 1)
|
||||||
|
return JamiTheme.accountCreationCurrentStepColor
|
||||||
|
return JamiTheme.accountCreationOtherStepColor
|
||||||
|
}
|
||||||
|
radius: height / 2
|
||||||
|
implicitHeight: 12
|
||||||
|
implicitWidth: 12
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -61,36 +61,31 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
Layout.preferredWidth: backupBtn.width
|
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
anchors.left: backupBtn.left
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.right: backupBtn.right
|
Layout.preferredWidth: backupBtn.width
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Backup your account!")
|
text: qsTr("Backup your account!")
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize + 3
|
font.pointSize: JamiTheme.textFontSize + 3
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignRight
|
||||||
|
|
||||||
text: qsTr("Recommended")
|
text: qsTr("Recommended")
|
||||||
color: "white"
|
color: "white"
|
||||||
padding: 8
|
padding: 8
|
||||||
anchors.right: parent.right
|
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "#aed581"
|
color: "#aed581"
|
||||||
@@ -101,24 +96,33 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("This account only exists on this device. If you lost your device or uninstall the application, your account will be deleted. You can backup your account now or later.")
|
property int preferredHeight: 0
|
||||||
wrapMode: Text.Wrap
|
|
||||||
anchors.left: backupBtn.left
|
|
||||||
anchors.right: backupBtn.right
|
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: backupBtn.width
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
|
text: qsTr("This account only exists on this device. " +
|
||||||
|
"If you lost your device or uninstall the application, " +
|
||||||
|
"your account will be deleted. " +
|
||||||
|
"You can backup your account now or later.")
|
||||||
|
wrapMode: Text.WordWrap
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
|
|
||||||
|
onFontChanged: {
|
||||||
|
var boundingRect = JamiQmlUtils.getTextBoundingRect(font, text)
|
||||||
|
preferredHeight = (boundingRect.width / backupBtn.preferredWidth)
|
||||||
|
* boundingRect.height
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
anchors.right: backupBtn.right
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.left: backupBtn.left
|
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Never show me this again")
|
text: qsTr("Never show me this again")
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,6 +138,11 @@ Rectangle {
|
|||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: backupBtn
|
id: backupBtn
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("BACKUP ACCOUNT")
|
text: qsTr("BACKUP ACCOUNT")
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
@@ -146,6 +155,10 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("SKIP")
|
text: qsTr("SKIP")
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
@@ -157,41 +170,4 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
HoverableButton {
|
|
||||||
id: cancelButton
|
|
||||||
z: 2
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
|
||||||
anchors.top: parent.top
|
|
||||||
|
|
||||||
rightPadding: 90
|
|
||||||
topPadding: 90
|
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Close")
|
|
||||||
|
|
||||||
Action {
|
|
||||||
enabled: parent.visible
|
|
||||||
shortcut: StandardKey.Cancel
|
|
||||||
onTriggered: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,38 +42,34 @@ Rectangle {
|
|||||||
errorText = ""
|
errorText = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
signal leavePage
|
signal leavePage
|
||||||
signal createAccount
|
signal createAccount
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
Layout.preferredWidth: parent.width
|
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
Layout.fillWidth: true
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.left: connectBtn.left
|
Layout.preferredWidth: connectBtn.width
|
||||||
anchors.right: connectBtn.right
|
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Enter URL of management server")
|
text: qsTr("Enter URL of management server")
|
||||||
|
font.pointSize: JamiTheme.textFontSize + 3
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignRight
|
||||||
|
|
||||||
text: qsTr("Required")
|
text: qsTr("Required")
|
||||||
color: "#ff1f62"
|
color: "#ff1f62"
|
||||||
padding: 8
|
padding: 8
|
||||||
anchors.right: parent.right
|
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "#fee4e9"
|
color: "#fee4e9"
|
||||||
@@ -86,19 +82,20 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: accountManagerEdit
|
id: accountManagerEdit
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Jami management server URL")
|
placeholderText: qsTr("Jami management server URL")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
|
|
||||||
fieldLayoutWidth: connectBtn.width
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Label {
|
||||||
anchors.left: connectBtn.left
|
Layout.alignment: Qt.AlignLeft
|
||||||
anchors.right: connectBtn.right
|
|
||||||
|
|
||||||
text: qsTr("Enter your organization credentials")
|
text: qsTr("Enter your organization credentials")
|
||||||
wrapMode: Text.Wrap
|
wrapMode: Text.Wrap
|
||||||
@@ -107,33 +104,42 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: usernameManagerEdit
|
id: usernameManagerEdit
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Username")
|
placeholderText: qsTr("Username")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
|
|
||||||
fieldLayoutWidth: connectBtn.width
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: passwordManagerEdit
|
id: passwordManagerEdit
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Password")
|
placeholderText: qsTr("Password")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
echoMode: TextInput.Password
|
echoMode: TextInput.Password
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
|
|
||||||
fieldLayoutWidth: connectBtn.width
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: connectBtn
|
id: connectBtn
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CONNECT")
|
text: qsTr("CONNECT")
|
||||||
enabled: accountManagerEdit.text.length !== 0
|
enabled: accountManagerEdit.text.length !== 0
|
||||||
&& usernameManagerEdit.text.length !== 0
|
&& usernameManagerEdit.text.length !== 0
|
||||||
@@ -149,53 +155,29 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: errorText
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
anchors.left: connectBtn.left
|
visible: errorText.length !== 0
|
||||||
anchors.right: connectBtn.right
|
text: errorText
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
color: "red"
|
color: "red"
|
||||||
|
|
||||||
height: 32
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HoverableButton {
|
MaterialButton {
|
||||||
id: cancelButton
|
id: backButton
|
||||||
z: 2
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.top: parent.top
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
rightPadding: 90
|
text: qsTr("BACK")
|
||||||
topPadding: 90
|
color: JamiTheme.buttonTintedGrey
|
||||||
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
outlined: true
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
onClicked: leavePage()
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Return to welcome page")
|
|
||||||
|
|
||||||
Action {
|
|
||||||
enabled: parent.visible
|
|
||||||
shortcut: StandardKey.Cancel
|
|
||||||
onTriggered: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,10 +48,15 @@ Rectangle {
|
|||||||
passwordConfirmEdit.clear()
|
passwordConfirmEdit.clear()
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
|
Shortcut {
|
||||||
|
context: Qt.ApplicationShortcut
|
||||||
|
sequence: "Esc"
|
||||||
|
enabled: !root.activeFocus
|
||||||
|
onActivated: leavePage()
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* JamiFileDialog for exporting account
|
* JamiFileDialog for exporting account
|
||||||
*/
|
*/
|
||||||
@@ -83,32 +88,33 @@ Rectangle {
|
|||||||
|
|
||||||
StackLayout {
|
StackLayout {
|
||||||
id: createAccountStack
|
id: createAccountStack
|
||||||
|
|
||||||
anchors.verticalCenter: root.verticalCenter
|
anchors.verticalCenter: root.verticalCenter
|
||||||
anchors.horizontalCenter: root.horizontalCenter
|
anchors.horizontalCenter: root.horizontalCenter
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
|
||||||
Layout.preferredWidth: root.width
|
Layout.preferredWidth: root.width
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
Layout.fillWidth: true
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.left: usernameEdit.left
|
Layout.preferredWidth: usernameEdit.width
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Choose a username for your account")
|
text: qsTr("Choose a username")
|
||||||
|
font.pointSize: JamiTheme.textFontSize + 3
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignRight
|
||||||
|
|
||||||
text: qsTr("Recommended")
|
text: qsTr("Recommended")
|
||||||
color: "white"
|
color: "white"
|
||||||
padding: 8
|
padding: 8
|
||||||
anchors.right: parent.right
|
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "#aed581"
|
color: "#aed581"
|
||||||
@@ -121,19 +127,32 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: usernameEdit
|
id: usernameEdit
|
||||||
|
|
||||||
|
Layout.topMargin: 15
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: fieldLayoutWidth
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Choose your username")
|
placeholderText: qsTr("Choose your username")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
borderColorMode: nameRegistrationUIState === WizardView.BLANK ? MaterialLineEdit.NORMAL
|
borderColorMode: {
|
||||||
: nameRegistrationUIState >= WizardView.FREE ? MaterialLineEdit.NORMAL : MaterialLineEdit.ERROR
|
if (nameRegistrationUIState === WizardView.BLANK)
|
||||||
|
return MaterialLineEdit.NORMAL
|
||||||
|
else
|
||||||
|
return nameRegistrationUIState >= WizardView.FREE ?
|
||||||
|
MaterialLineEdit.NORMAL : MaterialLineEdit.ERROR
|
||||||
|
}
|
||||||
|
|
||||||
fieldLayoutWidth: chooseUsernameButton.width
|
fieldLayoutWidth: chooseUsernameButton.width
|
||||||
Layout.topMargin: 32
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
|
visible: text.length !==0
|
||||||
|
|
||||||
text: {
|
text: {
|
||||||
switch(nameRegistrationUIState){
|
switch(nameRegistrationUIState){
|
||||||
case WizardView.BLANK:
|
case WizardView.BLANK:
|
||||||
@@ -146,19 +165,17 @@ Rectangle {
|
|||||||
return qsTr("Username already taken")
|
return qsTr("Username already taken")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.left: usernameEdit.left
|
|
||||||
anchors.right: usernameEdit.right
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
color: "red"
|
color: "red"
|
||||||
|
|
||||||
height: 32
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: chooseUsernameButton
|
id: chooseUsernameButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CHOOSE USERNAME")
|
text: qsTr("CHOOSE USERNAME")
|
||||||
color: nameRegistrationUIState === WizardView.FREE?
|
color: nameRegistrationUIState === WizardView.FREE?
|
||||||
JamiTheme.buttonTintedGrey
|
JamiTheme.buttonTintedGrey
|
||||||
@@ -172,43 +189,70 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
id: skipAndBackButtonsRow
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: chooseUsernameButton.preferredWidth
|
||||||
|
Layout.preferredHeight: chooseUsernameButton.preferredHeight
|
||||||
|
|
||||||
|
spacing: layoutSpacing
|
||||||
|
|
||||||
|
Repeater {
|
||||||
|
model: 2
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
text: qsTr("SKIP CHOOSING USERNAME")
|
width: (skipAndBackButtonsRow.width -
|
||||||
|
skipAndBackButtonsRow.spacing) / 2
|
||||||
|
height: skipAndBackButtonsRow.height
|
||||||
|
|
||||||
|
text: modelData === 0 ? qsTr("BACK") : qsTr("SKIP")
|
||||||
color: JamiTheme.buttonTintedGrey
|
color: JamiTheme.buttonTintedGrey
|
||||||
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
pressedColor: JamiTheme.buttonTintedGreyPressed
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
outlined: true
|
outlined: true
|
||||||
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
createAccountStack.currentIndex = createAccountStack.currentIndex + 1
|
if (modelData === 0)
|
||||||
|
leavePage()
|
||||||
|
else
|
||||||
|
createAccountStack.currentIndex =
|
||||||
|
createAccountStack.currentIndex + 1
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
|
||||||
Layout.preferredWidth: root.width
|
Layout.preferredWidth: root.width
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
anchors.right: createAccountButton.right
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.left: createAccountButton.left
|
Layout.preferredWidth: usernameEdit.width
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Encrypt account with password")
|
text: qsTr("Create a password")
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize + 3
|
font.pointSize: JamiTheme.textFontSize + 3
|
||||||
|
|
||||||
|
Switch {
|
||||||
|
id: passwordSwitch
|
||||||
|
|
||||||
|
anchors.left: parent.right
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignRight
|
||||||
|
|
||||||
text: qsTr("Optional")
|
text: qsTr("Optional")
|
||||||
color: "white"
|
color: "white"
|
||||||
anchors.right: parent.right
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
@@ -219,147 +263,99 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
|
||||||
spacing: 12
|
|
||||||
height: 48
|
|
||||||
|
|
||||||
anchors.right: createAccountButton.right
|
|
||||||
anchors.left: createAccountButton.left
|
|
||||||
|
|
||||||
Label {
|
|
||||||
text: qsTr("Choose a password to encrypt the account key on this device")
|
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
|
||||||
}
|
|
||||||
|
|
||||||
Switch {
|
|
||||||
id: passwordSwitch
|
|
||||||
Layout.alignment: Qt.AlignRight
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: passwordEdit
|
id: passwordEdit
|
||||||
|
|
||||||
visible: passwordSwitch.checked
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: createAccountButton.width
|
||||||
fieldLayoutWidth: createAccountButton.width
|
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
|
visible: passwordSwitch.checked
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
echoMode: TextInput.Password
|
echoMode: TextInput.Password
|
||||||
placeholderText: qsTr("Password")
|
placeholderText: qsTr("Password")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: passwordConfirmEdit
|
id: passwordConfirmEdit
|
||||||
|
|
||||||
visible: passwordSwitch.checked
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: createAccountButton.width
|
||||||
fieldLayoutWidth: createAccountButton.width
|
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
|
||||||
|
visible: passwordSwitch.checked
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
echoMode: TextInput.Password
|
echoMode: TextInput.Password
|
||||||
placeholderText: qsTr("Confirm password")
|
placeholderText: qsTr("Confirm password")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
anchors.right: createAccountButton.right
|
Layout.alignment: Qt.AlignLeft
|
||||||
anchors.left: createAccountButton.left
|
Layout.topMargin: 10
|
||||||
|
Layout.leftMargin: (root.width - createAccountButton.width) / 2
|
||||||
|
|
||||||
text: qsTr("Note that the password cannot be recovered")
|
text: qsTr("Note that the password cannot be recovered")
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: createAccountButton
|
id: createAccountButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 10
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
|
function checkEnable() {
|
||||||
|
return !passwordSwitch.checked ||
|
||||||
|
(passwordEdit.text === passwordConfirmEdit.text
|
||||||
|
&& passwordEdit.text.length !== 0)
|
||||||
|
}
|
||||||
|
|
||||||
text: qsTr("CREATE ACCOUNT")
|
text: qsTr("CREATE ACCOUNT")
|
||||||
color: !passwordSwitch.checked ||
|
enabled: checkEnable()
|
||||||
(passwordEdit.text === passwordConfirmEdit.text && passwordEdit.text.length !== 0)?
|
color: checkEnable() ? JamiTheme.wizardBlueButtons :
|
||||||
JamiTheme.wizardBlueButtons : JamiTheme.buttonTintedGreyInactive
|
JamiTheme.buttonTintedGreyInactive
|
||||||
hoveredColor: JamiTheme.buttonTintedBlueHovered
|
hoveredColor: JamiTheme.buttonTintedBlueHovered
|
||||||
pressedColor: JamiTheme.buttonTintedBluePressed
|
pressedColor: JamiTheme.buttonTintedBluePressed
|
||||||
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
createAccount()
|
createAccount()
|
||||||
createAccountStack.currentIndex = createAccountStack.currentIndex + 1
|
createAccountStack.currentIndex += 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MaterialButton {
|
||||||
|
id: backButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
|
text: qsTr("BACK")
|
||||||
|
color: JamiTheme.buttonTintedGrey
|
||||||
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
outlined: true
|
||||||
|
|
||||||
|
onClicked: createAccountStack.currentIndex -= 1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
AccountCreationStepIndicator {
|
||||||
spacing: 12
|
anchors.bottom: root.bottom
|
||||||
height: 48
|
anchors.bottomMargin: 30
|
||||||
|
|
||||||
anchors.top: createAccountStack.bottom
|
|
||||||
anchors.horizontalCenter: root.horizontalCenter
|
anchors.horizontalCenter: root.horizontalCenter
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
Rectangle {
|
spacing: layoutSpacing
|
||||||
color: usernameEdit.visible? JamiTheme.wizardBlueButtons : "grey"
|
steps: 3
|
||||||
radius: height / 2
|
currentStep: usernameEdit.visible ? 1 : 2
|
||||||
height: 12
|
|
||||||
width: 12
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
color: createAccountButton.visible? JamiTheme.wizardBlueButtons : "grey"
|
|
||||||
radius: height / 2
|
|
||||||
height: 12
|
|
||||||
width: 12
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
color: "grey"
|
|
||||||
radius: height / 2
|
|
||||||
height: 12
|
|
||||||
width: 12
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
HoverableButton {
|
|
||||||
id: cancelButton
|
|
||||||
z: 2
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
|
||||||
anchors.top: parent.top
|
|
||||||
|
|
||||||
rightPadding: 90
|
|
||||||
topPadding: 90
|
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Return to welcome page")
|
|
||||||
|
|
||||||
Shortcut {
|
|
||||||
sequence: StandardKey.Cancel
|
|
||||||
enabled: parent.visible
|
|
||||||
onActivated: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,6 @@ import QtQuick.Controls 2.14
|
|||||||
import "../../constant"
|
import "../../constant"
|
||||||
import "../../commoncomponents"
|
import "../../commoncomponents"
|
||||||
|
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
id: root
|
id: root
|
||||||
|
|
||||||
@@ -32,7 +31,7 @@ Rectangle {
|
|||||||
property alias text_sipUsernameEditAlias: sipUsernameEdit.text
|
property alias text_sipUsernameEditAlias: sipUsernameEdit.text
|
||||||
property alias text_sipPasswordEditAlias: sipPasswordEdit.text
|
property alias text_sipPasswordEditAlias: sipPasswordEdit.text
|
||||||
|
|
||||||
property /*alias*/ var boothImgBase64: null//setSIPAvatarWidget.imgBase64
|
property var boothImgBase64: null
|
||||||
|
|
||||||
function initializeOnShowUp() {
|
function initializeOnShowUp() {
|
||||||
clearAllTextFields()
|
clearAllTextFields()
|
||||||
@@ -49,36 +48,33 @@ Rectangle {
|
|||||||
signal createAccount
|
signal createAccount
|
||||||
signal leavePage
|
signal leavePage
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.centerIn: parent
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
|
||||||
Layout.preferredWidth: createAccountButton.width
|
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
anchors.left: createAccountButton.left
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.right: createAccountButton.right
|
Layout.preferredWidth: createAccountButton.width
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Configure an existing SIP account")
|
text: qsTr("Configure an existing SIP account")
|
||||||
|
font.pointSize: JamiTheme.textFontSize + 3
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Required")
|
Layout.alignment: Qt.AlignRight
|
||||||
color: "#ff1f62"
|
|
||||||
|
text: qsTr("Optional")
|
||||||
|
color: "white"
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "#fee4e9"
|
color: "#28b1ed"
|
||||||
radius: 24
|
radius: 24
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
}
|
}
|
||||||
@@ -88,58 +84,63 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: sipServernameEdit
|
id: sipServernameEdit
|
||||||
|
|
||||||
fieldLayoutWidth: createAccountButton.width
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.preferredWidth: createAccountButton.width
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Server")
|
placeholderText: qsTr("Server")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: sipProxyEdit
|
id: sipProxyEdit
|
||||||
|
|
||||||
fieldLayoutWidth: createAccountButton.width
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.preferredWidth: createAccountButton.width
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Proxy")
|
placeholderText: qsTr("Proxy")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: sipUsernameEdit
|
id: sipUsernameEdit
|
||||||
|
|
||||||
fieldLayoutWidth: createAccountButton.width
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.preferredWidth: createAccountButton.width
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Username")
|
placeholderText: qsTr("Username")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: sipPasswordEdit
|
id: sipPasswordEdit
|
||||||
|
|
||||||
fieldLayoutWidth: createAccountButton.width
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.preferredWidth: createAccountButton.width
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
echoMode: TextInput.Password
|
echoMode: TextInput.Password
|
||||||
placeholderText: qsTr("Password")
|
placeholderText: qsTr("Password")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: createAccountButton
|
id: createAccountButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CREATE SIP ACCOUNT")
|
text: qsTr("CREATE SIP ACCOUNT")
|
||||||
color: JamiTheme.wizardBlueButtons
|
color: JamiTheme.wizardBlueButtons
|
||||||
hoveredColor: JamiTheme.buttonTintedBlueHovered
|
hoveredColor: JamiTheme.buttonTintedBlueHovered
|
||||||
@@ -149,42 +150,21 @@ Rectangle {
|
|||||||
createAccount()
|
createAccount()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
HoverableButton {
|
MaterialButton {
|
||||||
id: cancelButton
|
id: backButton
|
||||||
z: 2
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.top: parent.top
|
Layout.preferredWidth: createAccountButton.width / 2
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
rightPadding: 90
|
text: qsTr("BACK")
|
||||||
topPadding: 90
|
color: JamiTheme.buttonTintedGrey
|
||||||
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
outlined: true
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
onClicked: leavePage()
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Return to welcome page")
|
|
||||||
|
|
||||||
Action {
|
|
||||||
enabled: parent.visible
|
|
||||||
shortcut: StandardKey.Cancel
|
|
||||||
onTriggered: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,24 +59,19 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
signal leavePage
|
signal leavePage
|
||||||
signal importAccount
|
signal importAccount
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
anchors.horizontalCenter: root.horizontalCenter
|
|
||||||
Layout.preferredWidth: parent.width
|
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
anchors.left: connectBtn.left
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.right: connectBtn.right
|
|
||||||
|
|
||||||
text: qsTr("Import from backup")
|
text: qsTr("Import from backup")
|
||||||
font.pointSize: JamiTheme.menuFontSize
|
font.pointSize: JamiTheme.menuFontSize
|
||||||
@@ -85,6 +80,10 @@ Rectangle {
|
|||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: fileImportBtn
|
id: fileImportBtn
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: fileImportBtnText
|
text: fileImportBtnText
|
||||||
toolTipText: qsTr("Import your account's archive")
|
toolTipText: qsTr("Import your account's archive")
|
||||||
source: "qrc:/images/icons/round-folder-24px.svg"
|
source: "qrc:/images/icons/round-folder-24px.svg"
|
||||||
@@ -92,39 +91,58 @@ Rectangle {
|
|||||||
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
pressedColor: JamiTheme.buttonTintedGreyPressed
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
|
||||||
onClicked: {
|
onClicked: importFromFile_Dialog.open()
|
||||||
importFromFile_Dialog.open()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
anchors.left: connectBtn.left
|
// For multiline text, recursive rearrange warning will show up when
|
||||||
anchors.right: connectBtn.right
|
// directly assigning contentHeight to Layout.preferredHeight
|
||||||
|
property int preferredHeight: layoutSpacing
|
||||||
|
|
||||||
text: qsTr("You can obtain an archive by clicking on \"Export account\" in the account settings. This will create a .gz file on your device.")
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: fileImportBtn.width
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
|
text: qsTr("You can obtain an archive by clicking on \"Export account\" " +
|
||||||
|
"in the account settings. " +
|
||||||
|
"This will create a .gz file on your device.")
|
||||||
wrapMode: Text.Wrap
|
wrapMode: Text.Wrap
|
||||||
|
|
||||||
|
onTextChanged: {
|
||||||
|
var boundingRect = JamiQmlUtils.getTextBoundingRect(font, text)
|
||||||
|
preferredHeight += (boundingRect.width / fileImportBtn.preferredWidth)
|
||||||
|
* boundingRect.height
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: passwordFromBackupEdit
|
id: passwordFromBackupEdit
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Password")
|
placeholderText: qsTr("Password")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
echoMode: TextInput.Password
|
echoMode: TextInput.Password
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
|
|
||||||
fieldLayoutWidth: connectBtn.width
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: connectBtn
|
id: connectBtn
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CONNECT FROM BACKUP")
|
text: qsTr("CONNECT FROM BACKUP")
|
||||||
color: filePath.length === 0 ?
|
color: filePath.length === 0 ?
|
||||||
JamiTheme.buttonTintedGreyInactive : JamiTheme.buttonTintedGrey
|
JamiTheme.buttonTintedGreyInactive : JamiTheme.buttonTintedGrey
|
||||||
|
enabled: !(filePath.length === 0)
|
||||||
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
pressedColor: JamiTheme.buttonTintedGreyPressed
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
|
||||||
@@ -135,53 +153,29 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
|
visible: errorText.length !== 0
|
||||||
|
|
||||||
text: errorText
|
text: errorText
|
||||||
|
|
||||||
anchors.left: connectBtn.left
|
|
||||||
anchors.right: connectBtn.right
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
color: "red"
|
color: "red"
|
||||||
|
|
||||||
height: 32
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HoverableButton {
|
MaterialButton {
|
||||||
id: cancelButton
|
id: backButton
|
||||||
z: 2
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.top: parent.top
|
Layout.preferredWidth: connectBtn.width / 2
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
rightPadding: 90
|
text: qsTr("BACK")
|
||||||
topPadding: 90
|
color: JamiTheme.buttonTintedGrey
|
||||||
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
outlined: true
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
onClicked: leavePage()
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Return to welcome page")
|
|
||||||
|
|
||||||
Action {
|
|
||||||
enabled: parent.visible
|
|
||||||
shortcut: StandardKey.Cancel
|
|
||||||
onTriggered: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,24 +39,20 @@ Rectangle {
|
|||||||
passwordFromDevice.clear()
|
passwordFromDevice.clear()
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
signal leavePage
|
signal leavePage
|
||||||
signal importAccount
|
signal importAccount
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
|
// Prevent possible anchor loop detected on centerIn.
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
Layout.preferredWidth: parent.width
|
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
anchors.left: connectBtn.left
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.right: connectBtn.right
|
|
||||||
|
|
||||||
text: qsTr("Enter your main Jami account password")
|
text: qsTr("Enter your main Jami account password")
|
||||||
font.pointSize: JamiTheme.menuFontSize
|
font.pointSize: JamiTheme.menuFontSize
|
||||||
@@ -65,41 +61,60 @@ Rectangle {
|
|||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: passwordFromDevice
|
id: passwordFromDevice
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Password")
|
placeholderText: qsTr("Password")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
echoMode: TextInput.Password
|
echoMode: TextInput.Password
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
|
|
||||||
fieldLayoutWidth: connectBtn.width
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
anchors.left: connectBtn.left
|
property int preferredHeight: layoutSpacing
|
||||||
anchors.right: connectBtn.right
|
|
||||||
|
|
||||||
text: qsTr("Enter the PIN from another configured Jami account. Use the \"export Jami account\" feature to obtain a PIN")
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
|
text: qsTr("Enter the PIN from another configured Jami account. " +
|
||||||
|
"Use the \"export Jami account\" feature to obtain a PIN")
|
||||||
wrapMode: Text.Wrap
|
wrapMode: Text.Wrap
|
||||||
|
|
||||||
|
onTextChanged: {
|
||||||
|
var boundingRect = JamiQmlUtils.getTextBoundingRect(font, text)
|
||||||
|
preferredHeight += (boundingRect.width / connectBtn.preferredWidth)
|
||||||
|
* boundingRect.height
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: pinFromDevice
|
id: pinFromDevice
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: connectBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("PIN")
|
placeholderText: qsTr("PIN")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
|
|
||||||
fieldLayoutWidth: connectBtn.width
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: connectBtn
|
id: connectBtn
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CONNECT FROM ANOTHER DEVICE")
|
text: qsTr("CONNECT FROM ANOTHER DEVICE")
|
||||||
color: pinFromDevice.text.length === 0?
|
color: pinFromDevice.text.length === 0?
|
||||||
JamiTheme.buttonTintedGreyInactive : JamiTheme.buttonTintedGrey
|
JamiTheme.buttonTintedGreyInactive : JamiTheme.buttonTintedGrey
|
||||||
@@ -113,53 +128,30 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: errorText
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
anchors.left: connectBtn.left
|
visible: errorText.length !== 0
|
||||||
anchors.right: connectBtn.right
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
text: errorText
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize
|
font.pointSize: JamiTheme.textFontSize
|
||||||
color: "red"
|
color: "red"
|
||||||
|
|
||||||
height: 32
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HoverableButton {
|
MaterialButton {
|
||||||
id: cancelButton
|
id: backButton
|
||||||
z: 2
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
Layout.alignment: Qt.AlignCenter
|
||||||
anchors.top: parent.top
|
Layout.preferredWidth: connectBtn.width / 2
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
rightPadding: 90
|
text: qsTr("BACK")
|
||||||
topPadding: 90
|
color: JamiTheme.buttonTintedGrey
|
||||||
|
hoveredColor: JamiTheme.buttonTintedGreyHovered
|
||||||
|
pressedColor: JamiTheme.buttonTintedGreyPressed
|
||||||
|
outlined: true
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
onClicked: leavePage()
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Return to welcome page")
|
|
||||||
|
|
||||||
Shortcut {
|
|
||||||
sequence: StandardKey.Cancel
|
|
||||||
enabled: parent.visible
|
|
||||||
onActivated: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,8 +36,6 @@ Rectangle {
|
|||||||
aliasEdit.clear()
|
aliasEdit.clear()
|
||||||
}
|
}
|
||||||
|
|
||||||
anchors.fill: parent
|
|
||||||
|
|
||||||
color: JamiTheme.backgroundColor
|
color: JamiTheme.backgroundColor
|
||||||
|
|
||||||
signal leavePage
|
signal leavePage
|
||||||
@@ -49,30 +47,28 @@ Rectangle {
|
|||||||
property alias displayName: aliasEdit.text
|
property alias displayName: aliasEdit.text
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
|
|
||||||
|
width: parent.width
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
Layout.preferredWidth: parent.width
|
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
||||||
|
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 12
|
spacing: layoutSpacing
|
||||||
height: 48
|
|
||||||
|
|
||||||
Layout.preferredWidth: saveProfileBtn.width
|
Layout.preferredWidth: saveProfileBtn.width
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: qsTr("Profile is only shared with contacts")
|
text: qsTr("Profile is only shared with contacts")
|
||||||
|
|
||||||
font.pointSize: JamiTheme.textFontSize + 3
|
font.pointSize: JamiTheme.textFontSize + 3
|
||||||
}
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
|
Layout.alignment: Qt.AlignRight
|
||||||
|
|
||||||
text: qsTr("Optional")
|
text: qsTr("Optional")
|
||||||
color: "white"
|
color: "white"
|
||||||
Layout.alignment: Qt.AlignRight
|
|
||||||
padding: 8
|
padding: 8
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
@@ -86,22 +82,23 @@ Rectangle {
|
|||||||
PhotoboothView {
|
PhotoboothView {
|
||||||
id: setAvatarWidget
|
id: setAvatarWidget
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredWidth
|
||||||
|
|
||||||
Layout.maximumWidth: 256
|
boothWidth: 200
|
||||||
Layout.preferredWidth: 256
|
|
||||||
Layout.minimumWidth: 256
|
|
||||||
Layout.maximumHeight: 256
|
|
||||||
Layout.preferredHeight: 256
|
|
||||||
Layout.minimumHeight: 256
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialLineEdit {
|
MaterialLineEdit {
|
||||||
id: aliasEdit
|
id: aliasEdit
|
||||||
|
|
||||||
|
Layout.preferredHeight: fieldLayoutHeight
|
||||||
|
Layout.preferredWidth: fieldLayoutWidth
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
|
||||||
selectByMouse: true
|
selectByMouse: true
|
||||||
placeholderText: qsTr("Enter your name")
|
placeholderText: qsTr("Enter your name")
|
||||||
font.pointSize: 10
|
font.pointSize: 9
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
|
|
||||||
borderColorMode: MaterialLineEdit.NORMAL
|
borderColorMode: MaterialLineEdit.NORMAL
|
||||||
@@ -111,6 +108,11 @@ Rectangle {
|
|||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: saveProfileBtn
|
id: saveProfileBtn
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
enabled: readyToSaveDetails
|
enabled: readyToSaveDetails
|
||||||
text: enabled? qsTr("Save Profile") : qsTr("Generating account…")
|
text: enabled? qsTr("Save Profile") : qsTr("Generating account…")
|
||||||
color: enabled? JamiTheme.wizardBlueButtons : JamiTheme.buttonTintedGreyInactive
|
color: enabled? JamiTheme.wizardBlueButtons : JamiTheme.buttonTintedGreyInactive
|
||||||
@@ -123,6 +125,10 @@ Rectangle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("SKIP")
|
text: qsTr("SKIP")
|
||||||
enabled: saveProfileBtn.enabled
|
enabled: saveProfileBtn.enabled
|
||||||
color: enabled? JamiTheme.buttonTintedGrey : JamiTheme.buttonTintedGreyInactive
|
color: enabled? JamiTheme.buttonTintedGrey : JamiTheme.buttonTintedGreyInactive
|
||||||
@@ -134,84 +140,15 @@ Rectangle {
|
|||||||
leavePage()
|
leavePage()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
|
||||||
id: bottomLayout
|
|
||||||
height: 48
|
|
||||||
spacing: 12
|
|
||||||
visible: showBottom
|
|
||||||
|
|
||||||
Layout.preferredWidth: saveProfileBtn.width
|
|
||||||
Layout.topMargin: 12
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
Item {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Rectangle {
|
AccountCreationStepIndicator {
|
||||||
color: "grey"
|
anchors.bottom: root.bottom
|
||||||
radius: height / 2
|
anchors.bottomMargin: 30
|
||||||
height: 12
|
anchors.horizontalCenter: root.horizontalCenter
|
||||||
width: 12
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
spacing: layoutSpacing
|
||||||
color: "grey"
|
steps: 3
|
||||||
radius: height / 2
|
currentStep: 3
|
||||||
height: 12
|
|
||||||
width: 12
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
color: JamiTheme.wizardBlueButtons
|
|
||||||
radius: height / 2
|
|
||||||
height: 12
|
|
||||||
width: 12
|
|
||||||
}
|
|
||||||
|
|
||||||
Item {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
HoverableButton {
|
|
||||||
id: cancelButton
|
|
||||||
z: 2
|
|
||||||
visible: readyToSaveDetails
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
|
||||||
anchors.top: parent.top
|
|
||||||
|
|
||||||
rightPadding: 90
|
|
||||||
topPadding: 90
|
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Close")
|
|
||||||
|
|
||||||
Action {
|
|
||||||
enabled: parent.visible
|
|
||||||
shortcut: StandardKey.Cancel
|
|
||||||
onTriggered: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,44 +26,38 @@ import net.jami.Models 1.0
|
|||||||
import "../../constant"
|
import "../../constant"
|
||||||
import "../../commoncomponents"
|
import "../../commoncomponents"
|
||||||
|
|
||||||
ColumnLayout {
|
Rectangle {
|
||||||
anchors.fill: parent
|
id: root
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
|
||||||
|
|
||||||
signal welcomePageRedirectPage(int toPageIndex)
|
signal welcomePageRedirectPage(int toPageIndex)
|
||||||
signal leavePage
|
signal leavePage
|
||||||
|
|
||||||
Item {
|
color: JamiTheme.backgroundColor
|
||||||
// put a spacer to make the buttons closs to the middle
|
|
||||||
Layout.preferredHeight: 48
|
ColumnLayout {
|
||||||
Layout.fillWidth: true
|
anchors.centerIn: parent
|
||||||
Layout.fillHeight: true
|
|
||||||
}
|
Text {
|
||||||
RowLayout {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
Label {
|
|
||||||
id: welcomeLabel
|
id: welcomeLabel
|
||||||
Layout.maximumHeight: 40
|
|
||||||
Layout.alignment: Qt.AlignCenter
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.preferredHeight: contentHeight
|
||||||
|
|
||||||
text: qsTr("Welcome to")
|
text: qsTr("Welcome to")
|
||||||
|
horizontalAlignment: Text.AlignHCenter
|
||||||
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
|
||||||
font.pointSize: 30
|
font.pointSize: 30
|
||||||
font.kerning: true
|
font.kerning: true
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
Label {
|
Label {
|
||||||
id: welcomeLogo
|
id: welcomeLogo
|
||||||
|
|
||||||
Layout.alignment: Qt.AlignCenter
|
Layout.alignment: Qt.AlignCenter
|
||||||
Layout.minimumWidth: 100
|
|
||||||
Layout.minimumHeight: 100
|
|
||||||
Layout.maximumWidth: 16777215
|
|
||||||
Layout.maximumHeight: 16777215
|
|
||||||
Layout.preferredWidth: 300
|
Layout.preferredWidth: 300
|
||||||
Layout.preferredHeight: 150
|
Layout.preferredHeight: 150
|
||||||
|
|
||||||
color: "transparent"
|
color: "transparent"
|
||||||
background: Image {
|
background: Image {
|
||||||
id: logoIMG
|
id: logoIMG
|
||||||
@@ -72,15 +66,15 @@ ColumnLayout {
|
|||||||
mipmap: true
|
mipmap: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
spacing: 8
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.maximumHeight: 36
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: newAccountButton
|
id: newAccountButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 8
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CREATE A JAMI ACCOUNT")
|
text: qsTr("CREATE A JAMI ACCOUNT")
|
||||||
toolTipText: qsTr("Create new Jami account")
|
toolTipText: qsTr("Create new Jami account")
|
||||||
source: "qrc:/images/default_avatar_overlay.svg"
|
source: "qrc:/images/default_avatar_overlay.svg"
|
||||||
@@ -92,16 +86,15 @@ ColumnLayout {
|
|||||||
welcomePageRedirectPage(1)
|
welcomePageRedirectPage(1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
spacing: 8
|
|
||||||
Layout.fillWidth: true
|
|
||||||
|
|
||||||
Layout.maximumHeight: 36
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: fromDeviceButton
|
id: fromDeviceButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 8
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("IMPORT FROM ANOTHER DEVICE")
|
text: qsTr("IMPORT FROM ANOTHER DEVICE")
|
||||||
toolTipText: qsTr("Import account from other device")
|
toolTipText: qsTr("Import account from other device")
|
||||||
source: "qrc:/images/icons/devices-24px.svg"
|
source: "qrc:/images/icons/devices-24px.svg"
|
||||||
@@ -113,16 +106,15 @@ ColumnLayout {
|
|||||||
welcomePageRedirectPage(5)
|
welcomePageRedirectPage(5)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
spacing: 8
|
|
||||||
Layout.fillWidth: true
|
|
||||||
|
|
||||||
Layout.maximumHeight: 36
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: fromBackupButton
|
id: fromBackupButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 8
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("CONNECT FROM BACKUP")
|
text: qsTr("CONNECT FROM BACKUP")
|
||||||
toolTipText: qsTr("Import account from backup file")
|
toolTipText: qsTr("Import account from backup file")
|
||||||
source: "qrc:/images/icons/backup-24px.svg"
|
source: "qrc:/images/icons/backup-24px.svg"
|
||||||
@@ -134,16 +126,15 @@ ColumnLayout {
|
|||||||
welcomePageRedirectPage(3)
|
welcomePageRedirectPage(3)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
spacing: 8
|
|
||||||
Layout.fillWidth: true
|
|
||||||
|
|
||||||
Layout.maximumHeight: 36
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: showAdvancedButton
|
id: showAdvancedButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 8
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
text: qsTr("SHOW ADVANCED")
|
text: qsTr("SHOW ADVANCED")
|
||||||
toolTipText: qsTr("Show advanced options")
|
toolTipText: qsTr("Show advanced options")
|
||||||
color: JamiTheme.buttonTintedBlue
|
color: JamiTheme.buttonTintedBlue
|
||||||
@@ -162,15 +153,15 @@ ColumnLayout {
|
|||||||
newSIPAccountButton.visible = !newSIPAccountButton.visible
|
newSIPAccountButton.visible = !newSIPAccountButton.visible
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
spacing: 8
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
|
|
||||||
Layout.maximumHeight: 36
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: connectAccountManagerButton
|
id: connectAccountManagerButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 8
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
visible: false
|
visible: false
|
||||||
|
|
||||||
text: qsTr("CONNECT TO MANAGEMENT SERVER")
|
text: qsTr("CONNECT TO MANAGEMENT SERVER")
|
||||||
@@ -184,14 +175,15 @@ ColumnLayout {
|
|||||||
welcomePageRedirectPage(6)
|
welcomePageRedirectPage(6)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
RowLayout {
|
|
||||||
spacing: 8
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.alignment: Qt.AlignHCenter
|
|
||||||
Layout.maximumHeight: 36
|
|
||||||
MaterialButton {
|
MaterialButton {
|
||||||
id: newSIPAccountButton
|
id: newSIPAccountButton
|
||||||
|
|
||||||
|
Layout.alignment: Qt.AlignCenter
|
||||||
|
Layout.topMargin: 8
|
||||||
|
Layout.preferredWidth: preferredWidth
|
||||||
|
Layout.preferredHeight: preferredHeight
|
||||||
|
|
||||||
visible: false
|
visible: false
|
||||||
|
|
||||||
text: qsTr("CREATE A SIP ACCOUNT")
|
text: qsTr("CREATE A SIP ACCOUNT")
|
||||||
@@ -206,51 +198,4 @@ ColumnLayout {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Item {
|
|
||||||
// put a spacer to make the buttons closs to the middle
|
|
||||||
Layout.fillHeight: true
|
|
||||||
Layout.preferredHeight: 65
|
|
||||||
Layout.fillWidth: true
|
|
||||||
}
|
|
||||||
|
|
||||||
HoverableButton {
|
|
||||||
id: cancelButton
|
|
||||||
z: 2
|
|
||||||
|
|
||||||
visible: {
|
|
||||||
return ClientWrapper.utilsAdaptor.getAccountListSize() > 0
|
|
||||||
}
|
|
||||||
|
|
||||||
anchors.right: parent.right
|
|
||||||
anchors.top: parent.top
|
|
||||||
|
|
||||||
rightPadding: 40
|
|
||||||
topPadding: 40
|
|
||||||
|
|
||||||
Layout.preferredWidth: 96
|
|
||||||
Layout.preferredHeight: 96
|
|
||||||
|
|
||||||
backgroundColor: "transparent"
|
|
||||||
onEnterColor: "transparent"
|
|
||||||
onPressColor: "transparent"
|
|
||||||
onReleaseColor: "transparent"
|
|
||||||
onExitColor: "transparent"
|
|
||||||
|
|
||||||
buttonImageHeight: 48
|
|
||||||
buttonImageWidth: 48
|
|
||||||
source: "qrc:/images/icons/ic_close_white_24dp.png"
|
|
||||||
radius: 48
|
|
||||||
baseColor: "#7c7c7c"
|
|
||||||
toolTipText: qsTr("Close")
|
|
||||||
|
|
||||||
Action {
|
|
||||||
enabled: parent.visible
|
|
||||||
shortcut: StandardKey.Cancel
|
|
||||||
onTriggered: leavePage()
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: {
|
|
||||||
leavePage()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user