GODT-1508: Splash screen for rebranding.

* Use old keychain until manual update.
* Improve desktop files migration for windows and linux.
* Revert, need admin rights to change desktop and start menu files.
This commit is contained in:
Jakub
2022-05-04 09:58:44 +02:00
parent 7d41062ae9
commit 865ac44037
15 changed files with 3240 additions and 252 deletions

View File

@ -23,126 +23,86 @@ import QtQuick.Controls.impl 2.12
import Proton 4.0
Rectangle {
Dialog {
id: root
property ColorScheme colorScheme
property var backend
color: root.colorScheme.background_norm
shouldShow: root.backend.showSplashScreen
modal: true
topPadding : 0
leftPadding : 0
rightPadding : 0
ColumnLayout {
anchors.centerIn: root
//width: 320
spacing: 20
Image {
Layout.alignment: Qt.AlignHCenter
sourceSize.width: 400
sourceSize.height: 225
Layout.preferredWidth: 400
Layout.preferredHeight: 225
source: "./icons/img-splash.png"
}
Label {
Layout.bottomMargin: 12;
Layout.alignment: Qt.AlignHCenter;
colorScheme: root.colorScheme;
text: "What's new in Bridge"
type: Label.Heading
horizontalAlignment: Text.AlignCenter
}
Repeater {
model: ListModel {
ListElement { icon: "ic-illustrative-view-html-code" ; title: qsTr("New interface") ; description: qsTr("Entirely redesigned GUI with more intuitive setup.")}
ListElement { icon: "ic-card-identity" ; title: qsTr("Status view") ; description: qsTr("Important notifications and available storage at a glance.")}
ListElement { icon: "ic-drive" ; title: qsTr("Local cache") ; description: qsTr("New and improved cache for major stability and performance enhancements.")}
}
Item {
implicitWidth: children[0].implicitWidth
implicitHeight: children[0].implicitHeight
RowLayout {
id: row
spacing: 25
Item {
Layout.topMargin: itemTitle.height/2
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: 24
Layout.preferredHeight: 24
ColorImage {
anchors.top: parent.top
anchors.left: parent.left
color: root.colorScheme.interaction_norm
source: "./icons/"+model.icon+".svg"
width: parent.width
sourceSize.width: parent.width
}
}
ColumnLayout {
spacing: 0
Label {
id: itemTitle
colorScheme: root.colorScheme
text: model.title
type: Label.Body_bold
}
Label {
Layout.preferredWidth: 320
colorScheme: root.colorScheme
text: model.description
wrapMode: Text.WordWrap
}
}
}
}
}
Item {
Layout.alignment: Qt.AlignHCenter;
implicitWidth: children[0].width
implicitHeight: children[0].height
Layout.leftMargin: 24
Layout.rightMargin: 24
Layout.preferredWidth: 336
RowLayout {
spacing: 10
Label {
colorScheme: root.colorScheme;
text: qsTr("Full release notes")
Layout.alignment: Qt.AlignHCenter
type: Label.LabelType.Body
onLinkActivated: Qt.openUrlExternally(link)
color: root.colorScheme.interaction_norm
}
ColorImage {
color: root.colorScheme.interaction_norm
source: "./icons/ic-external-link.svg"
width: 16
sourceSize.width: 16
}
}
MouseArea {
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
onClicked: Qt.openUrlExternally(root.backend.releaseNotesLink)
}
type: Label.Title
horizontalAlignment: Text.AlignHCenter
text: qsTr("Updated Proton, unified protection")
}
Label {
colorScheme: root.colorScheme
Layout.fillWidth: true
Layout.alignment: Qt.AlignHCenter;
Layout.preferredWidth: 336
Layout.leftMargin: 24
Layout.rightMargin: 24
wrapMode: Text.WordWrap
type: Label.Body
horizontalAlignment: Text.AlignHCenter
textFormat: Text.StyledText
text: qsTr("Introducing Protons refreshed look.<br/>") +
qsTr("Many services, one mission. Welcome to an Internet where privacy is the default. ") +
link("https://proton.me/news/updated-proton",qsTr("Learn More"))
onLinkActivated: Qt.openUrlExternally(link)
}
Button {
Layout.topMargin: 12
Layout.fillWidth: true
Layout.leftMargin: 24
Layout.rightMargin: 24
colorScheme: root.colorScheme
text: "Start using Bridge"
text: "Got it"
onClicked: root.backend.showSplashScreen = false
}
Image {
Layout.alignment: Qt.AlignHCenter
sourceSize.width: 164
sourceSize.height: 32
Layout.preferredWidth: 164
Layout.preferredHeight: 32
source: "./icons/img-proton-logos.svg"
}
}
}