Update: Added ability to hide login button, minor changes in readme.
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Controls 2.15
|
import QtQuick.Controls 2.15
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Layouts 1.15
|
import QtQuick.Layouts 1.15
|
||||||
@ -16,6 +15,49 @@ Column {
|
|||||||
property Control exposeSession: sessionSelect.exposeSession
|
property Control exposeSession: sessionSelect.exposeSession
|
||||||
property bool failed
|
property bool failed
|
||||||
|
|
||||||
|
Item {
|
||||||
|
// change also in selectSession
|
||||||
|
height: root.font.pointSize * 2
|
||||||
|
width: parent.width / 2
|
||||||
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
|
Label {
|
||||||
|
id: errorMessage
|
||||||
|
width: parent.width
|
||||||
|
text: failed ? config.TranslateLoginFailedWarning || textConstants.loginFailed + "!" : keyboard.capsLock ? config.TranslateCapslockWarning || textConstants.capslockWarning : null
|
||||||
|
horizontalAlignment: Text.AlignHCenter
|
||||||
|
font.pointSize: root.font.pointSize * 0.8
|
||||||
|
font.italic: true
|
||||||
|
color: root.palette.text
|
||||||
|
opacity: 0
|
||||||
|
states: [
|
||||||
|
State {
|
||||||
|
name: "fail"
|
||||||
|
when: failed
|
||||||
|
PropertyChanges {
|
||||||
|
target: errorMessage
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
},
|
||||||
|
State {
|
||||||
|
name: "capslock"
|
||||||
|
when: keyboard.capsLock
|
||||||
|
PropertyChanges {
|
||||||
|
target: errorMessage
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
transitions: [
|
||||||
|
Transition {
|
||||||
|
PropertyAnimation {
|
||||||
|
properties: "opacity"
|
||||||
|
duration: 100
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: usernameField
|
id: usernameField
|
||||||
|
|
||||||
@ -189,7 +231,7 @@ Column {
|
|||||||
border.width: parent.activeFocus ? 2 : 1
|
border.width: parent.activeFocus ? 2 : 1
|
||||||
radius: config.RoundCorners || 0
|
radius: config.RoundCorners || 0
|
||||||
}
|
}
|
||||||
onAccepted: loginButton.clicked()
|
onAccepted: config.AllowBadUsernames == "false" ? sddm.login(username.text.toLowerCase(), password.text, sessionSelect.selectedSession) : sddm.login(username.text, password.text, sessionSelect.selectedSession)
|
||||||
KeyNavigation.down: showPassword
|
KeyNavigation.down: showPassword
|
||||||
z: 1
|
z: 1
|
||||||
|
|
||||||
@ -216,20 +258,19 @@ Column {
|
|||||||
height: root.font.pointSize * 4.5
|
height: root.font.pointSize * 4.5
|
||||||
width: parent.width / 2
|
width: parent.width / 2
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
|
|
||||||
Button {
|
Button {
|
||||||
|
|
||||||
id: showPassword
|
id: showPassword
|
||||||
z: 2
|
z: 2
|
||||||
width: selectUser.height * 1
|
width: selectUser.height * 1
|
||||||
height: parent.height
|
height: parent.height
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
anchors.leftMargin: selectUser.height * 0
|
anchors.leftMargin: selectUser.height * 0
|
||||||
icon.height: parent.height * 0.25
|
icon.height: parent.height * 0.25
|
||||||
icon.width: parent.height * 0.25
|
icon.width: parent.height * 0.25
|
||||||
icon.color: root.palette.text
|
icon.color: root.palette.text
|
||||||
icon.source: Qt.resolvedUrl("../Assets/Password2.svg")
|
icon.source: Qt.resolvedUrl("../Assets/Password2.svg")
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "transparent"
|
color: "transparent"
|
||||||
@ -341,57 +382,18 @@ Column {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
Item {
|
|
||||||
height: root.font.pointSize * 2.3
|
|
||||||
width: parent.width / 2
|
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
|
||||||
Label {
|
|
||||||
id: errorMessage
|
|
||||||
width: parent.width
|
|
||||||
text: failed ? config.TranslateLoginFailedWarning || textConstants.loginFailed + "!" : keyboard.capsLock ? config.TranslateCapslockWarning || textConstants.capslockWarning : null
|
|
||||||
horizontalAlignment: Text.AlignHCenter
|
|
||||||
font.pointSize: root.font.pointSize * 0.8
|
|
||||||
font.italic: true
|
|
||||||
color: root.palette.text
|
|
||||||
opacity: 0
|
|
||||||
states: [
|
|
||||||
State {
|
|
||||||
name: "fail"
|
|
||||||
when: failed
|
|
||||||
PropertyChanges {
|
|
||||||
target: errorMessage
|
|
||||||
opacity: 1
|
|
||||||
}
|
|
||||||
},
|
|
||||||
State {
|
|
||||||
name: "capslock"
|
|
||||||
when: keyboard.capsLock
|
|
||||||
PropertyChanges {
|
|
||||||
target: errorMessage
|
|
||||||
opacity: 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
transitions: [
|
|
||||||
Transition {
|
|
||||||
PropertyAnimation {
|
|
||||||
properties: "opacity"
|
|
||||||
duration: 100
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: login
|
id: login
|
||||||
height: root.font.pointSize * 3
|
// important
|
||||||
|
height: root.font.pointSize * 9
|
||||||
width: parent.width / 2
|
width: parent.width / 2
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
|
visible: config.HideLoginButton == "true" ? false : true
|
||||||
Button {
|
Button {
|
||||||
|
|
||||||
id: loginButton
|
id: loginButton
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
text: config.TranslateLogin || textConstants.login
|
text: config.TranslateLogin || textConstants.login
|
||||||
height: root.font.pointSize * 3
|
height: root.font.pointSize * 3
|
||||||
implicitWidth: parent.width
|
implicitWidth: parent.width
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Layouts 1.15
|
import QtQuick.Layouts 1.15
|
||||||
@ -21,7 +20,8 @@ ColumnLayout {
|
|||||||
Clock {
|
Clock {
|
||||||
id: clock
|
id: clock
|
||||||
Layout.alignment: Qt.AlignHCenter | Qt.AlignBottom
|
Layout.alignment: Qt.AlignHCenter | Qt.AlignBottom
|
||||||
Layout.preferredHeight: root.height / 4
|
// important
|
||||||
|
Layout.preferredHeight: root.height / 3
|
||||||
Layout.leftMargin: p != "0" ? a == "left" ? -p : a == "right" ? p : 0 : 0
|
Layout.leftMargin: p != "0" ? a == "left" ? -p : a == "right" ? p : 0 : 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Controls 2.15
|
import QtQuick.Controls 2.15
|
||||||
@ -20,7 +19,9 @@ Item {
|
|||||||
|
|
||||||
ComboBox {
|
ComboBox {
|
||||||
id: selectSession
|
id: selectSession
|
||||||
|
// important
|
||||||
|
// change also in errorMessage
|
||||||
|
height: root.font.pointSize * 2
|
||||||
hoverEnabled: true
|
hoverEnabled: true
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
Keys.onPressed: {
|
Keys.onPressed: {
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Layouts 1.15
|
import QtQuick.Layouts 1.15
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Controls 2.15
|
import QtQuick.Controls 2.15
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.VirtualKeyboard 2.3
|
import QtQuick.VirtualKeyboard 2.3
|
||||||
|
|||||||
9
Main.qml
@ -1,8 +1,7 @@
|
|||||||
// SDDM Sugar Candy is free software: you can redistribute it and/or modify it
|
// Config created by Keyitdev https://github.com/Keyitdev/sddm-astronaut-theme
|
||||||
// under the terms of the GNU General Public License as published by the
|
// Copyright (C) 2022-2024 Keyitdev
|
||||||
// Free Software Foundation, either version 3 of the License, or any later version.
|
// Based on https://github.com/MarianArlt/sddm-sugar-dark
|
||||||
// Config created by https://github.com/MarianArlt
|
// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
// Config modified by keyitdev https://github.com/keyitdev
|
|
||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import QtQuick.Layouts 1.15
|
import QtQuick.Layouts 1.15
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 938 KiB After Width: | Height: | Size: 802 KiB |
|
Before Width: | Height: | Size: 730 KiB After Width: | Height: | Size: 939 KiB |
|
Before Width: | Height: | Size: 703 KiB After Width: | Height: | Size: 758 KiB |
BIN
Previews/preview4.png
Normal file
|
After Width: | Height: | Size: 714 KiB |
15
README.md
@ -1,12 +1,20 @@
|
|||||||
# sddm-astronaut-theme
|
# sddm-astronaut-theme
|
||||||
|
|
||||||
A theme for the [SDDM login manager](https://github.com/sddm/sddm) based on [`Sugar Dark for SDDM`](https://github.com/MarianArlt/sddm-sugar-dark).
|
A theme for the [SDDM login manager](https://github.com/sddm/sddm).
|
||||||
Screen resolution: 1080p.
|
|
||||||
|
- Screen resolution: 1080p
|
||||||
|
- Font: Open sans
|
||||||
|
|
||||||
### Preview
|
### Preview
|
||||||
|
|
||||||
|
You can easily change how it looks in **[config](./theme.conf)**.
|
||||||
|
Here are some examples:
|
||||||
|
|
||||||

|

|
||||||

|

|
||||||

|

|
||||||
|

|
||||||
|
|
||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
@ -37,4 +45,5 @@ Based on the theme [`Sugar Dark for SDDM`](https://github.com/MarianArlt/sddm-su
|
|||||||
|
|
||||||
### License
|
### License
|
||||||
|
|
||||||
Distributed under the [GPLv3+](https://www.gnu.org/licenses/gpl-3.0.html) License.
|
Distributed under the **[GPLv3+](https://www.gnu.org/licenses/gpl-3.0.html) License**.
|
||||||
|
Copyright (C) 2022-2024 Keyitdev.
|
||||||
@ -21,7 +21,7 @@ FullBlur="false"
|
|||||||
PartialBlur="true"
|
PartialBlur="true"
|
||||||
## Enable or disable the blur effect; if HaveFormBackground is set to true then PartialBlur will trigger the BackgroundColor of the form element to be partially transparent and blend with the blur.
|
## Enable or disable the blur effect; if HaveFormBackground is set to true then PartialBlur will trigger the BackgroundColor of the form element to be partially transparent and blend with the blur.
|
||||||
|
|
||||||
BlurRadius="0"
|
BlurRadius="80"
|
||||||
## Set the strength of the blur effect. Anything above 100 is pretty strong and might slow down the rendering time. 0 is like setting false for any blur.
|
## Set the strength of the blur effect. Anything above 100 is pretty strong and might slow down the rendering time. 0 is like setting false for any blur.
|
||||||
|
|
||||||
|
|
||||||
@ -77,6 +77,8 @@ Font="Open Sans"
|
|||||||
FontSize=""
|
FontSize=""
|
||||||
## Only set a fixed value if fonts are way too small for your resolution. Preferrably kept empty.
|
## Only set a fixed value if fonts are way too small for your resolution. Preferrably kept empty.
|
||||||
|
|
||||||
|
HideLoginButton="true"
|
||||||
|
## Hides login button if set to true.
|
||||||
|
|
||||||
|
|
||||||
## [Interface Behavior]
|
## [Interface Behavior]
|
||||||
|
|||||||