From abef1472d8d31de857ccd501d5e67e894e33b579 Mon Sep 17 00:00:00 2001 From: Dan Ballard Date: Tue, 19 Mar 2019 13:35:31 -0700 Subject: [PATCH] splash pane with custom loading progressbar; custom pre splash screen for android --- android/AndroidManifest.xml | 2 + android/res/drawable/cwtch_logo.png | Bin 0 -> 11464 bytes android/res/drawable/splash.xml | 12 +++ android/res/values/apptheme.xml | 6 ++ qml.qrc | 3 + qml/images/cwtch_logo.png | Bin 0 -> 11464 bytes qml/main.qml | 114 +++++++++++++++++----------- qml/panes/SplashPane.qml | 30 ++++++++ qml/styles/CwtchProgress.qml | 35 +++++++++ qml/widgets/MyProfile.qml | 3 +- 10 files changed, 158 insertions(+), 47 deletions(-) create mode 100644 android/res/drawable/cwtch_logo.png create mode 100644 android/res/drawable/splash.xml create mode 100644 android/res/values/apptheme.xml create mode 100644 qml/images/cwtch_logo.png create mode 100644 qml/panes/SplashPane.qml create mode 100644 qml/styles/CwtchProgress.qml diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml index bd61a81d..9b065160 100644 --- a/android/AndroidManifest.xml +++ b/android/AndroidManifest.xml @@ -4,6 +4,7 @@ @@ -39,6 +40,7 @@ + diff --git a/android/res/drawable/cwtch_logo.png b/android/res/drawable/cwtch_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8f9e32bae84594e1d3ecf7bbdc15019a74067996 GIT binary patch literal 11464 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 + + + + + + + + + + diff --git a/android/res/values/apptheme.xml b/android/res/values/apptheme.xml new file mode 100644 index 00000000..adec2328 --- /dev/null +++ b/android/res/values/apptheme.xml @@ -0,0 +1,6 @@ + + + + diff --git a/qml.qrc b/qml.qrc index 99f13d05..b4097e8e 100644 --- a/qml.qrc +++ b/qml.qrc @@ -12,6 +12,7 @@ qml/panes/OverlayPane.qml qml/panes/PeerSettingsPane.qml qml/panes/SettingsPane.qml + qml/panes/SplashPane.qml qml/styles/CwtchComboBoxStyle.qml qml/styles/CwtchExpandingButton.qml qml/styles/CwtchTextAreaStyle.qml @@ -34,5 +35,7 @@ i18n/translation_en.qm i18n/translation_fr.qm i18n/translation_pt.qm + qml/images/cwtch_logo.png + qml/styles/CwtchProgress.qml diff --git a/qml/images/cwtch_logo.png b/qml/images/cwtch_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8f9e32bae84594e1d3ecf7bbdc15019a74067996 GIT binary patch literal 11464 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 0.92 ? parent.left : toolbar.right - anchors.top: ratio >= 0.92 ? toolbar.bottom : parent.top - anchors.right: parent.right - anchors.bottom: parent.bottom */ - anchors.fill: parent - spacing: 0 + StackLayout { + id: parentStack + currentIndex: 0 + anchors.fill: parent + + Rectangle { // Splash pane + color: "#FFFFFF" + //Layout.fillHeight: true + //Layout.minimumWidth: Layout.maximumWidth + //Layout.minimumHeight: parent.height + anchors.fill: parent + + visible: true + + SplashPane { + anchors.fill: parent + } + } - Rectangle { // THE LEFT PANE WITH TOOLS AND CONTACTS - color: "#D2C0DD" - Layout.fillHeight: true - Layout.minimumWidth: Layout.maximumWidth - Layout.maximumWidth: theStack.pane == theStack.emptyPane ? parent.width : 450 - visible: (ratio <= 1.08 && windowItem.width >= 700) || theStack.pane == theStack.emptyPane + RowLayout { // CONTAINS EVERYTHING EXCEPT THE TOOLBAR + /* anchors.left: ratio >= 0.92 ? parent.left : toolbar.right + anchors.top: ratio >= 0.92 ? toolbar.bottom : parent.top + anchors.right: parent.right + anchors.bottom: parent.bottom */ + anchors.fill: parent + spacing: 0 - ContactList{ - anchors.fill: parent - } - } - Rectangle { // THE RIGHT PANE WHERE THE MESSAGES AND STUFF GO - color: "#EEEEFF" - Layout.fillWidth: true - Layout.fillHeight: true + Rectangle { // THE LEFT PANE WITH TOOLS AND CONTACTS + color: "#D2C0DD" + Layout.fillHeight: true + Layout.minimumWidth: Layout.maximumWidth + Layout.maximumWidth: theStack.pane == theStack.emptyPane ? parent.width : 450 + visible: (ratio <= 1.08 && windowItem.width >= 700) || theStack.pane == theStack.emptyPane - StackLayout { - id: theStack - anchors.fill: parent - currentIndex: 0 + ContactList{ + anchors.fill: parent + } + } - property alias pane: theStack.currentIndex - readonly property int emptyPane: 0 - readonly property int messagePane: 1 - readonly property int settingsPane: 2 - readonly property int userProfilePane: 3 - readonly property int groupProfilePane: 4 - readonly property int addGroupPane: 5 - - property string title + Rectangle { // THE RIGHT PANE WHERE THE MESSAGES AND STUFF GO + color: "#EEEEFF" + Layout.fillWidth: true + Layout.fillHeight: true - Item { anchors.fill: parent } // empty + StackLayout { + id: theStack + anchors.fill: parent + currentIndex: 0 - OverlayPane { // messagePane - title: theStack.title - anchors.fill: parent - } + property alias pane: theStack.currentIndex + readonly property int emptyPane: 0 + readonly property int messagePane: 1 + readonly property int settingsPane: 2 + readonly property int userProfilePane: 3 + readonly property int groupProfilePane: 4 + readonly property int addGroupPane: 5 - SettingsPane{ anchors.fill: parent } + property string title - PeerSettingsPane { anchors.fill: parent } - GroupSettingsPane{ anchors.fill: parent } + Item { anchors.fill: parent } // empty - AddGroupPane { anchors.fill: parent } - } - } + OverlayPane { // messagePane + title: theStack.title + anchors.fill: parent + } + + SettingsPane{ anchors.fill: parent } + + PeerSettingsPane { anchors.fill: parent } + + GroupSettingsPane{ anchors.fill: parent } + + AddGroupPane { anchors.fill: parent } + } + } + } } PropertyAnimation { id: anmPopup; easing.type: Easing.InQuart; duration: 7000; target: popup; property: "opacity"; to: 0; } @@ -207,4 +229,4 @@ ApplicationWindow { theStack.title = str } } -} \ No newline at end of file +} diff --git a/qml/panes/SplashPane.qml b/qml/panes/SplashPane.qml new file mode 100644 index 00000000..0a503411 --- /dev/null +++ b/qml/panes/SplashPane.qml @@ -0,0 +1,30 @@ +import QtQuick 2.7 +import QtQuick.Controls 2.4 +import QtQuick.Controls.Material 2.0 +import QtQuick.Layouts 1.3 +import QtQuick.Window 2.11 +import QtQuick.Controls 1.4 +import QtQuick.Controls.Styles 1.4 +import "../styles" + +Item { + Image { + id: splashImage + anchors.horizontalCenter: parent.horizontalCenter + anchors.verticalCenter: parent.verticalCenter + + source: "qrc:/qml/images/cwtch_logo.png" + } + + ProgressBar { + anchors.horizontalCenter: parent.horizontalCenter + anchors.top: splashImage.bottom + anchors.topMargin: 10 + + indeterminate: true + + style: ProgressBarStyle { + progress: CwtchProgress {} + } + } +} diff --git a/qml/styles/CwtchProgress.qml b/qml/styles/CwtchProgress.qml new file mode 100644 index 00000000..63fe59b7 --- /dev/null +++ b/qml/styles/CwtchProgress.qml @@ -0,0 +1,35 @@ +import QtQuick 2.7 +import QtQuick.Controls 2.4 +import QtQuick.Controls.Material 2.0 +import QtQuick.Layouts 1.3 +import QtQuick.Window 2.11 +import QtQuick.Controls 1.4 +import QtQuick.Controls.Styles 1.4 + + +Rectangle { + border.color: "#D2C0DD" + color: "red" + + // Indeterminate animation by animating alternating stripes: + Item { + anchors.fill: parent + anchors.margins: 1 + visible: control.indeterminate + clip: true + Row { + Repeater { + Rectangle { + color: index % 2 ? "#D2C0DD" : "#b29dbe" + width: 20 ; height: control.height + } + model: control.width / 20 + 2 + } + XAnimator on x { + from: 0 ; to: -40 + loops: Animation.Infinite + running: parentStack.currentIndex == 0 + } + } + } +} diff --git a/qml/widgets/MyProfile.qml b/qml/widgets/MyProfile.qml index f76124f9..9d80501e 100644 --- a/qml/widgets/MyProfile.qml +++ b/qml/widgets/MyProfile.qml @@ -229,6 +229,7 @@ ColumnLayout { lblNick.text = _nick onion = _onion image = _image + parentStack.currentIndex = 1 } onTorStatus: function(code, str) { @@ -236,4 +237,4 @@ ColumnLayout { rectTorStatus.message = str } } -} \ No newline at end of file +}