diff --git a/lookandfeel/contents/splash/Splash.qml b/lookandfeel/contents/splash/Splash.qml index a259c7a89..b3f8ad7cf 100644 --- a/lookandfeel/contents/splash/Splash.qml +++ b/lookandfeel/contents/splash/Splash.qml @@ -1,110 +1,113 @@ /* * Copyright 2014 Marco Martin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2, * or (at your option) any later version, as published by the Free * Software Foundation * * 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, write to the * Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ import QtQuick 2.5 +import QtQuick.Window 2.2 Rectangle { id: root color: "black" property int stage onStageChanged: { if (stage == 2) { introAnimation.running = true; } else if (stage == 5) { introAnimation.target = busyIndicator; introAnimation.from = 1; introAnimation.to = 0; introAnimation.running = true; } } Item { id: content anchors.fill: parent opacity: 0 TextMetrics { id: units text: "M" property int gridUnit: boundingRect.height property int largeSpacing: units.gridUnit property int smallSpacing: Math.max(2, gridUnit/4) } Image { id: logo //match SDDM/lockscreen avatar positioning property real size: units.gridUnit * 8 anchors.centerIn: parent source: "images/plasma.svgz" sourceSize.width: size sourceSize.height: size } Image { id: busyIndicator //in the middle of the remaining space y: parent.height - (parent.height - logo.y) / 2 - height/2 anchors.horizontalCenter: parent.horizontalCenter source: "images/busywidget.svgz" sourceSize.height: units.gridUnit * 2 sourceSize.width: units.gridUnit * 2 RotationAnimator on rotation { id: rotationAnimator from: 0 to: 360 duration: 1500 loops: Animation.Infinite } } Row { spacing: units.smallSpacing*2 anchors { bottom: parent.bottom right: parent.right margins: units.gridUnit } Text { color: "#eff0f1" - renderType: Text.NativeRendering + // Work around Qt bug where NativeRendering breaks for non-integer scale factors + // https://bugreports.qt.io/browse/QTBUG-67007 + renderType: Screen.devicePixelRatio % 1 !== 0 ? Text.QtRendering : Text.NativeRendering anchors.verticalCenter: parent.verticalCenter text: i18ndc("plasma_lookandfeel_org.kde.lookandfeel", "This is the first text the user sees while starting in the splash screen, should be translated as something short, is a form that can be seen on a product. Plasma is the project name so shouldn't be translated.", "Plasma made by KDE") } Image { source: "images/kde.svgz" sourceSize.height: units.gridUnit * 2 sourceSize.width: units.gridUnit * 2 } } } OpacityAnimator { id: introAnimation running: false target: content from: 0 to: 1 duration: 1000 easing.type: Easing.InOutQuad } }