diff options
| author | gabeszm <vgabor92@protonmail.com> | 2026-10-01 21:02:47 +0200 |
|---|---|---|
| committer | gabeszm <vgabor92@protonmail.com> | 2026-10-01 21:02:47 +0200 |
| commit | ae2eb9d0881e3ef8317fb5476e03b9e599439660 (patch) | |
| tree | a6ee42f95ca925a3fde29a8c445b197729a70472 | |
| parent | 159a44375e4dca8079c0e89d1634213f631984b3 (diff) | |
| download | RaveOS-PKGBUILD-ae2eb9d0881e3ef8317fb5476e03b9e599439660.tar.gz RaveOS-PKGBUILD-ae2eb9d0881e3ef8317fb5476e03b9e599439660.zip | |
fix sddm ui
16 files changed, 158 insertions, 65 deletions
diff --git a/raveos-sddm-theme/PKGBUILD b/raveos-sddm-theme/PKGBUILD index fbafc42..cf0e32b 100644 --- a/raveos-sddm-theme/PKGBUILD +++ b/raveos-sddm-theme/PKGBUILD @@ -12,7 +12,7 @@ pkgname=raveos-sddm-theme pkgver=1.0.0 -pkgrel=4 +pkgrel=5 pkgdesc="RaveOS kozos SDDM login tema (sddm-rave-theme)" arch=('any') url="https://raveos.local" diff --git a/raveos-sddm-theme/sddm-rave-theme/Assets/Reboot.bak b/raveos-sddm-theme/sddm-rave-theme/Assets/Reboot.bak new file mode 100644 index 0000000..7b21d73 --- /dev/null +++ b/raveos-sddm-theme/sddm-rave-theme/Assets/Reboot.bak @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + width="34" + height="34" + viewBox="0 0 34 34" + version="1.1" + id="svg8"> + <defs + id="defs2" /> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + transform="matrix(1.000593,0,0,1.0006688,0.99050505,-287.73702)"> + <path + style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.00189281;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" + d="M 19.001953,1.1308594 V 2 H 19 v 11 h 1 V 2.3359375 A 15,15 45 0 1 32,17 15,15 45 0 1 21.001953,31.455078 v 1.033203 A 16.009488,16.010701 45 0 0 33.009766,17 16.009488,16.010701 45 0 0 19.001953,1.1308594 Z M 12.998047,1.5117188 A 16.009488,16.010701 45 0 0 0.99023438,17 16.009488,16.010701 45 0 0 14.998047,32.869141 V 32 H 15 V 21 H 14 V 31.664062 A 15,15 45 0 1 2,17 15,15 45 0 1 12.998047,2.5449219 Z" + transform="matrix(0.70668771,-0.70663419,0.70668771,0.70663419,-8.0273788,304.53335)" + id="path817" /> + </g> +</svg> diff --git a/raveos-sddm-theme/sddm-rave-theme/Assets/Shutdown.bak b/raveos-sddm-theme/sddm-rave-theme/Assets/Shutdown.bak new file mode 100644 index 0000000..a19a695 --- /dev/null +++ b/raveos-sddm-theme/sddm-rave-theme/Assets/Shutdown.bak @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + id="svg8" + version="1.1" + viewBox="0 0 34 34" + height="34" + width="34"> + <defs + id="defs2" /> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <path + id="path822" + d="M 14 1 L 14 13 L 15 13 L 15 1 L 14 1 z M 19 1 L 19 13 L 20 13 L 20 1 L 19 1 z M 9 3.1855469 C 4.1702837 5.9748853 1.0026451 11.162345 1 17 C 1 25.836556 8.163444 33 17 33 C 25.836556 33 33 25.836556 33 17 C 32.99593 11.163669 29.828666 5.9780498 25 3.1894531 L 25 4.3496094 C 29.280842 7.0494632 31.988612 11.788234 32 17 C 32 25.284271 25.284271 32 17 32 C 8.7157288 32 2 25.284271 2 17 C 2.0120649 11.788824 4.7195457 7.0510246 9 4.3515625 L 9 3.1855469 z " + style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" /> +</svg> diff --git a/raveos-sddm-theme/sddm-rave-theme/Backgrounds/sddm_bg_animated.mp4 b/raveos-sddm-theme/sddm-rave-theme/Backgrounds/sddm_bg_animated.mp4 Binary files differnew file mode 100644 index 0000000..841b72f --- /dev/null +++ b/raveos-sddm-theme/sddm-rave-theme/Backgrounds/sddm_bg_animated.mp4 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml b/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml index 6c6b7c8..05e65ee 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Based on https://github.com/MarianArlt/sddm-sugar-dark // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html @@ -10,7 +10,7 @@ Column { id: clock width: parent.width - spacing: root.font.pointSize * 0.45 + spacing: root.font.pointSize * 0.65 Image { id: logoImage @@ -18,8 +18,8 @@ Column { anchors.horizontalCenter: parent.horizontalCenter source: (config.Logo && config.Logo !== "") ? Qt.resolvedUrl("../" + config.Logo) : "" fillMode: Image.PreserveAspectFit - width: Math.min(root.font.pointSize * 8.5, root.height * 0.10) - height: Math.min(root.font.pointSize * 8.5, root.height * 0.10) + width: Math.min(root.font.pointSize * 8.5, root.height * 0.10 * (root.contentScale || 0.92)) + height: Math.min(root.font.pointSize * 8.5, root.height * 0.10 * (root.contentScale || 0.92)) visible: config.Logo && config.Logo !== "" } @@ -41,7 +41,7 @@ Column { anchors.horizontalCenter: parent.horizontalCenter - font.pointSize: Math.min(root.font.pointSize * 2.4, root.height * 0.040) + font.pointSize: Math.min(root.font.pointSize * 2.4, root.height * 0.040 * (root.contentScale || 0.92)) font.bold: true color: config.TimeTextColor style: Text.Raised @@ -57,7 +57,7 @@ Column { id: dateLabel anchors.horizontalCenter: parent.horizontalCenter - + color: config.DateTextColor font.pointSize: root.font.pointSize * 0.82 font.bold: true diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/Input.qml b/raveos-sddm-theme/sddm-rave-theme/Components/Input.qml index daf3ba0..fd29314 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/Input.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/Input.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Based on https://github.com/MarianArlt/sddm-sugar-dark // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html @@ -71,7 +71,7 @@ Column { Item { id: avatarField - height: Math.min(root.font.pointSize * 6.5, parent.width * 0.35) + height: Math.min(root.font.pointSize * 7.0, parent.width * 0.35) width: parent.width anchors.horizontalCenter: parent.horizontalCenter @@ -81,7 +81,7 @@ Column { function resolveIconCandidates(idx, name) { var list = [] var count = (typeof userModel !== "undefined" && userModel) ? userModel.count : 0 - + var uIndex = -1 if (name && name !== "" && count > 0) { for (var i = 0; i < count; i++) { @@ -297,7 +297,7 @@ Column { Item { id: usernameField - height: root.font.pointSize * 3.8 + height: root.font.pointSize * 4.1 width: parent.width anchors.horizontalCenter: parent.horizontalCenter @@ -408,7 +408,7 @@ Column { text: usernameField.selectedUsername color: config.LoginFieldTextColor font.bold: true - font.pointSize: root.font.pointSize * 0.95 + font.pointSize: root.font.pointSize * 0.82 font.family: root.font.family style: Text.Raised styleColor: Qt.rgba(0, 0, 0, 0.40) @@ -629,7 +629,7 @@ Column { text: model.name || "" color: "#ffffff" font.bold: true - font.pointSize: root.font.pointSize * 0.85 + font.pointSize: root.font.pointSize * 0.78 font.family: root.font.family style: Text.Raised styleColor: Qt.rgba(0, 0, 0, 0.40) @@ -638,7 +638,7 @@ Column { Text { text: (model.realName && model.realName !== model.name) ? model.realName : "" color: Qt.rgba(1, 1, 1, 0.65) - font.pointSize: root.font.pointSize * 0.70 + font.pointSize: root.font.pointSize * 0.65 font.family: root.font.family visible: text !== "" } @@ -662,7 +662,7 @@ Column { Item { id: passwordField - height: root.font.pointSize * 3.8 + height: root.font.pointSize * 4.1 width: parent.width anchors.horizontalCenter: parent.horizontalCenter @@ -747,6 +747,8 @@ Column { horizontalAlignment: TextInput.AlignHCenter font.bold: true + font.pointSize: root.font.pointSize * 0.82 + font.family: root.font.family color: config.PasswordFieldTextColor focus: config.PasswordFocus == "true" ? true : false echoMode: passwordIcon.checked ? TextInput.Normal : TextInput.Password @@ -810,7 +812,7 @@ Column { Item { id: login - height: root.font.pointSize * 4.2 + height: root.font.pointSize * 4.5 width: parent.width anchors.horizontalCenter: parent.horizontalCenter @@ -876,7 +878,7 @@ Column { anchors.centerIn: parent font.bold: true - font.pointSize: root.font.pointSize + font.pointSize: root.font.pointSize * 0.82 font.family: root.font.family color: "#ffffff" style: Text.Raised @@ -903,18 +905,19 @@ Column { Item { id: powerButtonsRow - height: root.font.pointSize * 5.5 + height: root.font.pointSize * 7.6 width: parent.width anchors.horizontalCenter: parent.horizontalCenter Row { anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - spacing: root.font.pointSize * 1.5 + anchors.bottom: parent.bottom + anchors.bottomMargin: root.font.pointSize * 0.3 + spacing: root.font.pointSize * 1.8 // Reboot gomb Column { - spacing: root.font.pointSize * 0.45 + spacing: root.font.pointSize * 0.5 Item { width: root.font.pointSize * 4.2 @@ -978,7 +981,7 @@ Column { // Shutdown gomb Column { - spacing: root.font.pointSize * 0.45 + spacing: root.font.pointSize * 0.5 Item { width: root.font.pointSize * 4.2 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/KeyboardLayoutIndicator.qml b/raveos-sddm-theme/sddm-rave-theme/Components/KeyboardLayoutIndicator.qml index cd1f73d..ffe10fa 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/KeyboardLayoutIndicator.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/KeyboardLayoutIndicator.qml @@ -16,8 +16,8 @@ Item { // Number of available layouts property int layoutsCount: (typeof keyboard !== "undefined" && keyboard && keyboard.layouts) ? keyboard.layouts.length : 0 - // Show if we have layout info or a valid locale fallback - visible: currentShortName !== "" + // Show if we have layout info or a valid locale fallback and not hidden + visible: (config.HideKeyboardLayout !== "false") ? false : (currentShortName !== "") // Get current layout shortname (e.g. "US", "HU") property string currentShortName: "" diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/LoginForm.qml b/raveos-sddm-theme/sddm-rave-theme/Components/LoginForm.qml index d3fd1b4..779a21a 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/LoginForm.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/LoginForm.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Based on https://github.com/MarianArlt/sddm-sugar-dark // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html @@ -14,10 +14,10 @@ ColumnLayout { property int p: config.ScreenPadding == "" ? 0 : config.ScreenPadding property string a: config.FormPosition - spacing: root.font.pointSize * 0.9 + spacing: root.font.pointSize * 1.3 clip: true - readonly property real innerPadding: root.font.pointSize * 0.9 + readonly property real innerPadding: root.font.pointSize * 1.6 Clock { id: clock @@ -56,13 +56,14 @@ ColumnLayout { } } - // Billentyűzet kiosztás jelző (külön sorban, hogy akksi/wifi hiányában is látszódjon) + // Billentyűzet kiosztás jelző (letiltva a felhasználói kérésnek megfelelően) KeyboardLayoutIndicator { id: keyboardLayoutIndicator + visible: false Layout.alignment: Qt.AlignHCenter - Layout.preferredHeight: keyboardLayoutIndicator.implicitHeight - Layout.bottomMargin: visible ? root.font.pointSize * 0.3 : 0 + Layout.preferredHeight: 0 + Layout.bottomMargin: 0 Layout.leftMargin: innerPadding Layout.rightMargin: innerPadding } @@ -83,6 +84,7 @@ ColumnLayout { Layout.fillWidth: true Layout.alignment: Qt.AlignHCenter Layout.preferredHeight: sessionSelect.height + Layout.topMargin: root.font.pointSize * 2.0 Layout.leftMargin: innerPadding Layout.rightMargin: innerPadding } diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/NetworkIndicator.qml b/raveos-sddm-theme/sddm-rave-theme/Components/NetworkIndicator.qml index c3c5eca..6300841 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/NetworkIndicator.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/NetworkIndicator.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html import QtQuick 2.15 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/ParticleOverlay.qml b/raveos-sddm-theme/sddm-rave-theme/Components/ParticleOverlay.qml index 6fa02f9..27d5b71 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/ParticleOverlay.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/ParticleOverlay.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html import QtQuick 2.15 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/SessionButton.qml b/raveos-sddm-theme/sddm-rave-theme/Components/SessionButton.qml index ed614b6..045e298 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/SessionButton.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/SessionButton.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Based on https://github.com/MarianArlt/sddm-sugar-dark // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html @@ -11,7 +11,7 @@ Item { height: root.font.pointSize * 1.8 width: parent.width - + property var selectedSession: selectSession.currentIndex property string textConstantSession property int loginButtonWidth @@ -29,7 +29,7 @@ Item { model: sessionModel currentIndex: model.lastIndex textRole: "name" - + Keys.onPressed: function(event) { if ((event.key == Qt.Key_Left || event.key == Qt.Key_Right) && !popup.opened) { popup.open(); @@ -40,7 +40,7 @@ Item { // minus padding width: popupHandler.width - root.font.pointSize * 1.5 anchors.horizontalCenter: popupHandler.horizontalCenter - + contentItem: Text { verticalAlignment: Text.AlignVCenter horizontalAlignment: Text.AlignHCenter @@ -50,7 +50,7 @@ Item { font.family: root.font.family color: config.DropdownTextColor } - + background: Rectangle { color: selectSession.highlightedIndex === index ? Qt.rgba(1, 1, 1, 0.15) : "transparent" radius: config.RoundCorners !== "" ? parseInt(config.RoundCorners) / 4 : root.font.pointSize * 0.4 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/ToastNotification.qml b/raveos-sddm-theme/sddm-rave-theme/Components/ToastNotification.qml index cfe507e..672f346 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/ToastNotification.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/ToastNotification.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html import QtQuick 2.15 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/UserSwitcher.qml b/raveos-sddm-theme/sddm-rave-theme/Components/UserSwitcher.qml index ee8852e..f87b4d0 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/UserSwitcher.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/UserSwitcher.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html import QtQuick 2.15 diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/VirtualKeyboardButton.qml b/raveos-sddm-theme/sddm-rave-theme/Components/VirtualKeyboardButton.qml index f109dd1..7430091 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Components/VirtualKeyboardButton.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Components/VirtualKeyboardButton.qml @@ -1,5 +1,5 @@ -// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme -// Copyright (C) 2022-2025 Keyitdev +// Config created by gabeszm https://git.rp1.hu/gabeszm/sddm-rave-theme +// Copyright (C) 2026 gabeszm // Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html import QtQuick 2.15 @@ -20,7 +20,7 @@ Item { visible: virtualKeyboard.status == Loader.Ready && config.HideVirtualKeyboard == "false" checkable: true onClicked: virtualKeyboard.switchState() - + Keys.onReturnPressed: { toggle(); virtualKeyboard.switchState(); @@ -91,4 +91,4 @@ Item { } ] } -}
\ No newline at end of file +} diff --git a/raveos-sddm-theme/sddm-rave-theme/Main.qml b/raveos-sddm-theme/sddm-rave-theme/Main.qml index cb50ce9..10f8325 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Main.qml +++ b/raveos-sddm-theme/sddm-rave-theme/Main.qml @@ -27,12 +27,14 @@ Pane { palette.buttonText: config.HoverSystemButtonsIconsColor font.family: config.Font - font.pointSize: config.FontSize !== "" ? config.FontSize : parseInt(height / 80) || 13 + readonly property real baseFontSize: config.FontSize !== "" ? parseFloat(config.FontSize) : (parseInt(height / 80) || 13) + readonly property real contentScale: 0.92 + font.pointSize: baseFontSize * contentScale focus: true - readonly property real formPadding: root.font.pointSize * 2.8 - readonly property real borderInset: root.font.pointSize * 0.20 + readonly property real formPadding: baseFontSize * 2.8 + readonly property real borderInset: baseFontSize * 0.20 property bool leftleft: config.HaveFormBackground == "true" && config.PartialBlur == "false" && @@ -82,7 +84,7 @@ Pane { z: 3 property real angle: 0 - property real radius: config.RoundCorners !== "" ? parseInt(config.RoundCorners) : root.font.pointSize * 1.5 + property real radius: config.RoundCorners !== "" ? parseInt(config.RoundCorners) : baseFontSize * 1.5 onAngleChanged: requestPaint() @@ -117,7 +119,7 @@ Pane { grad.addColorStop(1, "rgba(255, 255, 255, 0.65)"); ctx.strokeStyle = grad; - ctx.lineWidth = root.font.pointSize * 0.15; + ctx.lineWidth = baseFontSize * 0.15; ctx.stroke(); ctx.restore(); } @@ -144,9 +146,9 @@ Pane { anchors.centerIn: form z: 4 - radius: config.RoundCorners !== "" ? parseInt(config.RoundCorners) : root.font.pointSize * 1.5 + radius: config.RoundCorners !== "" ? parseInt(config.RoundCorners) : baseFontSize * 1.5 border.color: Qt.rgba(1, 1, 1, 0.45) - border.width: Math.max(1, root.font.pointSize * 0.08) + border.width: Math.max(1, baseFontSize * 0.08) clip: true gradient: Gradient { @@ -159,8 +161,8 @@ Pane { LoginForm { id: form - height: Math.min(implicitHeight, parent.height - formPadding) - width: Math.min(Math.max(parent.width * 0.22, root.font.pointSize * 16), parent.width * 0.75) + height: Math.min(Math.max(implicitHeight, baseFontSize * 40.4), parent.height - formPadding) + width: Math.min(Math.max(parent.width * 0.22, baseFontSize * 16), parent.width * 0.75) clip: true anchors.left: config.FormPosition == "left" ? parent.left : undefined anchors.leftMargin: config.FormPosition == "left" ? parent.width * 0.18 : 0 @@ -261,9 +263,12 @@ Pane { Image { id: backgroundPlaceholderImage + anchors.fill: parent + fillMode: config.CropBackground == "true" ? Image.PreserveAspectCrop : Image.PreserveAspectFit z: 10 source: config.BackgroundPlaceholder visible: false + asynchronous: true } AnimatedImage { @@ -273,12 +278,22 @@ Pane { id: player videoOutput: videoOutput - autoPlay: true playbackRate: config.BackgroundSpeed == "" ? 1.0 : config.BackgroundSpeed - loops: -1 + loops: (config.LoopBackground === "true") ? MediaPlayer.Infinite : 1 onPlayingChanged: { - console.log("Video started.") - backgroundPlaceholderImage.visible = false; + if (player.playing) { + console.log("Video started.") + backgroundPlaceholderImage.visible = false; + } + } + onMediaStatusChanged: { + if (player.mediaStatus === MediaPlayer.EndOfMedia) { + if (config.LoopBackground === "true") { + player.play(); + } else { + player.pause(); + } + } } } diff --git a/raveos-sddm-theme/sddm-rave-theme/Themes/rave.conf b/raveos-sddm-theme/sddm-rave-theme/Themes/rave.conf index d73c476..cd2c870 100644 --- a/raveos-sddm-theme/sddm-rave-theme/Themes/rave.conf +++ b/raveos-sddm-theme/sddm-rave-theme/Themes/rave.conf @@ -32,11 +32,12 @@ HeaderText="" #################### Background #################### -BackgroundPlaceholder="" +BackgroundPlaceholder="Backgrounds/rave_background.png" # Must be a relative path. # Background displayed before the actual background is loaded. # Use only if the background is a video, otherwise leave blank. # Connected with: Background. +# Background="Backgrounds/sddm_bg_animated.mp4" Background="Backgrounds/rave_background.png" # Must be a relative path. # Supports: png, jpg, jpeg, webp, gif, avi, mp4, mov, mkv, m4v, webm. @@ -48,6 +49,10 @@ PauseBackground="" # Default false. # If set to true, stops playback of gifs. Works only with gifs. # Connected with: Background. +LoopBackground="false" +# Default false. +# If set to true, loops video playback infinitely. When false, freezes on the last frame when video ends. +# Connected with: Background. DimBackground="0.0" # Options: 0.0-1.0. # Connected with: DimBackgroundColor @@ -131,6 +136,7 @@ VirtualKeyboardPosition="left" #################### Interface Behavior #################### +HideKeyboardLayout="true" HideVirtualKeyboard="false" HideSystemButtons="false" HideLoginButton="false" |