🎉 Create dotfiles repo
Initial dotfiles commit
This commit is contained in:
commit
3718df1096
472 changed files with 57835 additions and 0 deletions
14
sddm/everforest/Components/Clock.qml
Normal file
14
sddm/everforest/Components/Clock.qml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
import QtQuick 2.15
|
||||
import SddmComponents 2.0
|
||||
|
||||
Clock {
|
||||
id: time
|
||||
color: "#CAD3F5"
|
||||
timeFont.family: config.Font
|
||||
dateFont.family: config.Font
|
||||
anchors {
|
||||
margins: 10
|
||||
top: parent.top
|
||||
right: parent.right
|
||||
}
|
||||
}
|
||||
177
sddm/everforest/Components/LoginPanel.qml
Normal file
177
sddm/everforest/Components/LoginPanel.qml
Normal file
|
|
@ -0,0 +1,177 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Window 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
import "../assets"
|
||||
|
||||
Item {
|
||||
property var user: userField.text
|
||||
property var password: passwordField.text
|
||||
property var session: sessionPanel.session
|
||||
property var inputHeight: Screen.height * 0.032
|
||||
property var inputWidth: Screen.width * 0.16
|
||||
Rectangle {
|
||||
id: loginBackground
|
||||
anchors {
|
||||
verticalCenter: parent.verticalCenter
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
height: inputHeight * ( config.UserIcon == "true" ? 11.2 : 5.3 )
|
||||
width: inputWidth * 1.2
|
||||
radius: 5
|
||||
visible: config.LoginBackground == "true" ? true : false
|
||||
color: "#1E2030"
|
||||
}
|
||||
Column {
|
||||
spacing: 8
|
||||
anchors {
|
||||
bottom: parent.bottom
|
||||
left: parent.left
|
||||
}
|
||||
PowerButton {
|
||||
id: powerButton
|
||||
}
|
||||
RebootButton {
|
||||
id: rebootButton
|
||||
}
|
||||
SleepButton {
|
||||
id: sleepButton
|
||||
}
|
||||
z: 5
|
||||
}
|
||||
Column {
|
||||
spacing: 8
|
||||
anchors {
|
||||
bottom: parent.bottom
|
||||
right: parent.right
|
||||
}
|
||||
SessionPanel {
|
||||
id: sessionPanel
|
||||
}
|
||||
z: 5
|
||||
}
|
||||
Column {
|
||||
spacing: 8
|
||||
z: 5
|
||||
width: inputWidth
|
||||
anchors {
|
||||
verticalCenter: parent.verticalCenter
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
Rectangle {
|
||||
visible: config.UserIcon == "true" ? true : false
|
||||
width: inputHeight * 5.7 ; height: inputHeight * 5.7
|
||||
color: "transparent"
|
||||
Image {
|
||||
source: Qt.resolvedUrl("../assets/defaultIcon.png")
|
||||
height: parent.width
|
||||
width: parent.width
|
||||
}
|
||||
Image {
|
||||
// common icon path for KDE and GNOME
|
||||
source: Qt.resolvedUrl("/var/lib/AccountsService/icons/" + user)
|
||||
height: parent.width
|
||||
width: parent.width
|
||||
}
|
||||
Image {
|
||||
source: Qt.resolvedUrl(config.LoginBackground == "true" ? "../assets/maskDark.svg" : "../assets/mask.svg")
|
||||
height: parent.width
|
||||
width: parent.width
|
||||
}
|
||||
Image {
|
||||
source: Qt.resolvedUrl("../assets/ring.svg")
|
||||
height: parent.width
|
||||
width: parent.width
|
||||
}
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
}
|
||||
UserField {
|
||||
id: userField
|
||||
height: inputHeight
|
||||
width: parent.width
|
||||
}
|
||||
PasswordField {
|
||||
id: passwordField
|
||||
height: inputHeight
|
||||
width: parent.width
|
||||
onAccepted: loginButton.clicked()
|
||||
}
|
||||
Button {
|
||||
id: loginButton
|
||||
height: inputHeight
|
||||
width: parent.width
|
||||
enabled: user != "" && password != "" ? true : false
|
||||
hoverEnabled: true
|
||||
contentItem: Text {
|
||||
id: buttonText
|
||||
renderType: Text.NativeRendering
|
||||
font {
|
||||
family: config.Font
|
||||
pointSize: config.FontSize
|
||||
bold: true
|
||||
}
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
color: "#181926"
|
||||
text: "Login"
|
||||
}
|
||||
background: Rectangle {
|
||||
id: buttonBackground
|
||||
color: "#A6DA95"
|
||||
radius: 3
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "pressed"
|
||||
when: loginButton.down
|
||||
PropertyChanges {
|
||||
target: buttonBackground
|
||||
color: "#A5ADCB"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: buttonText
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "hovered"
|
||||
when: loginButton.hovered
|
||||
PropertyChanges {
|
||||
target: buttonBackground
|
||||
color: "#A5ADCB"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: buttonText
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "enabled"
|
||||
when: loginButton.enabled
|
||||
PropertyChanges {
|
||||
target: buttonBackground
|
||||
}
|
||||
PropertyChanges {
|
||||
target: buttonText
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
onClicked: {
|
||||
sddm.login(user, password, session)
|
||||
}
|
||||
}
|
||||
}
|
||||
Connections {
|
||||
target: sddm
|
||||
|
||||
function onLoginFailed() {
|
||||
passwordField.text = ""
|
||||
passwordField.focus = true
|
||||
}
|
||||
}
|
||||
}
|
||||
50
sddm/everforest/Components/PasswordField.qml
Normal file
50
sddm/everforest/Components/PasswordField.qml
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
TextField {
|
||||
id: passwordField
|
||||
focus: true
|
||||
selectByMouse: true
|
||||
placeholderText: "Password"
|
||||
echoMode: TextInput.Password
|
||||
passwordCharacter: "•"
|
||||
passwordMaskDelay: config.PasswordShowLastLetter
|
||||
selectionColor: "#6E738D"
|
||||
renderType: Text.NativeRendering
|
||||
font {
|
||||
family: config.Font
|
||||
pointSize: config.FontSize
|
||||
bold: true
|
||||
}
|
||||
color: "#CAD3F5"
|
||||
horizontalAlignment: TextInput.AlignHCenter
|
||||
background: Rectangle {
|
||||
id: passFieldBackground
|
||||
radius: 3
|
||||
color: "#363A4F"
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "focused"
|
||||
when: passwordField.activeFocus
|
||||
PropertyChanges {
|
||||
target: passFieldBackground
|
||||
color: "#494D64"
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "hovered"
|
||||
when: passwordField.hovered
|
||||
PropertyChanges {
|
||||
target: passFieldBackground
|
||||
color: "#494D64"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
}
|
||||
41
sddm/everforest/Components/PowerButton.qml
Normal file
41
sddm/everforest/Components/PowerButton.qml
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
Item {
|
||||
implicitHeight: powerButton.height
|
||||
implicitWidth: powerButton.width
|
||||
Button {
|
||||
id: powerButton
|
||||
height: inputHeight
|
||||
width: inputHeight
|
||||
hoverEnabled: true
|
||||
icon {
|
||||
source: Qt.resolvedUrl("../icons/power.svg")
|
||||
height: height
|
||||
width: width
|
||||
color: "#181926"
|
||||
}
|
||||
background: Rectangle {
|
||||
id: powerButtonBackground
|
||||
radius: 3
|
||||
color: "#ED8796"
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "hovered"
|
||||
when: powerButton.hovered
|
||||
PropertyChanges {
|
||||
target: powerButtonBackground
|
||||
color: "#F4DBD6"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
onClicked: sddm.powerOff()
|
||||
}
|
||||
}
|
||||
41
sddm/everforest/Components/RebootButton.qml
Normal file
41
sddm/everforest/Components/RebootButton.qml
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
Item {
|
||||
implicitHeight: rebootButton.height
|
||||
implicitWidth: rebootButton.width
|
||||
Button {
|
||||
id: rebootButton
|
||||
height: inputHeight
|
||||
width: inputHeight
|
||||
hoverEnabled: true
|
||||
icon {
|
||||
source: Qt.resolvedUrl("../icons/reboot.svg")
|
||||
height: height
|
||||
width: width
|
||||
color: "#181926"
|
||||
}
|
||||
background: Rectangle {
|
||||
id: rebootButtonBackground
|
||||
radius: 3
|
||||
color: "#ED8796"
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "hovered"
|
||||
when: rebootButton.hovered
|
||||
PropertyChanges {
|
||||
target: rebootButtonBackground
|
||||
color: "#F4DBD6"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
onClicked: sddm.reboot()
|
||||
}
|
||||
}
|
||||
158
sddm/everforest/Components/SessionPanel.qml
Normal file
158
sddm/everforest/Components/SessionPanel.qml
Normal file
|
|
@ -0,0 +1,158 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
import QtQml.Models 2.15
|
||||
|
||||
Item {
|
||||
property var session: sessionList.currentIndex
|
||||
implicitHeight: sessionButton.height
|
||||
implicitWidth: sessionButton.width
|
||||
DelegateModel {
|
||||
id: sessionWrapper
|
||||
model: sessionModel
|
||||
delegate: ItemDelegate {
|
||||
id: sessionEntry
|
||||
height: inputHeight
|
||||
width: parent.width
|
||||
highlighted: sessionList.currentIndex == index
|
||||
contentItem: Text {
|
||||
renderType: Text.NativeRendering
|
||||
font {
|
||||
family: config.Font
|
||||
pointSize: config.FontSize
|
||||
bold: true
|
||||
}
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
color: "#CAD3F5"
|
||||
text: name
|
||||
}
|
||||
background: Rectangle {
|
||||
id: sessionEntryBackground
|
||||
color: "#494D64"
|
||||
radius: 3
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "hovered"
|
||||
when: sessionEntry.hovered
|
||||
PropertyChanges {
|
||||
target: sessionEntryBackground
|
||||
color: "#5B6078"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
property: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
sessionList.currentIndex = index
|
||||
sessionPopup.close()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Button {
|
||||
id: sessionButton
|
||||
height: inputHeight
|
||||
width: inputHeight
|
||||
hoverEnabled: true
|
||||
icon {
|
||||
source: Qt.resolvedUrl("../icons/settings.svg")
|
||||
height: height
|
||||
width: width
|
||||
color: "#CAD3F5"
|
||||
}
|
||||
background: Rectangle {
|
||||
id: sessionButtonBackground
|
||||
color: "#363A4F"
|
||||
radius: 3
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "pressed"
|
||||
when: sessionButton.down
|
||||
PropertyChanges {
|
||||
target: sessionButtonBackground
|
||||
color: "#494D64"
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "hovered"
|
||||
when: sessionButton.hovered
|
||||
PropertyChanges {
|
||||
target: sessionButtonBackground
|
||||
color: "#5B6078"
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "selection"
|
||||
when: sessionPopup.visible
|
||||
PropertyChanges {
|
||||
target: sessionButtonBackground
|
||||
color: "#5B6078"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 150
|
||||
}
|
||||
}
|
||||
onClicked: {
|
||||
sessionPopup.visible ? sessionPopup.close() : sessionPopup.open()
|
||||
sessionButton.state = "pressed"
|
||||
}
|
||||
}
|
||||
Popup {
|
||||
id: sessionPopup
|
||||
width: inputWidth + padding * 2
|
||||
x: (sessionButton.width + sessionList.spacing) * -7.6
|
||||
y: -(contentHeight + padding * 2) + sessionButton.height
|
||||
padding: inputHeight / 10
|
||||
background: Rectangle {
|
||||
radius: 5.4
|
||||
color: "#363A4F"
|
||||
}
|
||||
contentItem: ListView {
|
||||
id: sessionList
|
||||
implicitHeight: contentHeight
|
||||
spacing: 8
|
||||
model: sessionWrapper
|
||||
currentIndex: sessionModel.lastIndex
|
||||
clip: true
|
||||
}
|
||||
enter: Transition {
|
||||
ParallelAnimation {
|
||||
NumberAnimation {
|
||||
property: "opacity"
|
||||
from: 0
|
||||
to: 1
|
||||
duration: 400
|
||||
easing.type: Easing.OutExpo
|
||||
}
|
||||
NumberAnimation {
|
||||
property: "x"
|
||||
from: sessionPopup.x + (inputWidth * 0.1)
|
||||
to: sessionPopup.x
|
||||
duration: 500
|
||||
easing.type: Easing.OutExpo
|
||||
}
|
||||
}
|
||||
}
|
||||
exit: Transition {
|
||||
NumberAnimation {
|
||||
property: "opacity"
|
||||
from: 1
|
||||
to: 0
|
||||
duration: 300
|
||||
easing.type: Easing.OutExpo
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
41
sddm/everforest/Components/SleepButton.qml
Normal file
41
sddm/everforest/Components/SleepButton.qml
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
Item {
|
||||
implicitHeight: sleepButton.height
|
||||
implicitWidth: sleepButton.width
|
||||
Button {
|
||||
id: sleepButton
|
||||
height: inputHeight
|
||||
width: inputHeight
|
||||
hoverEnabled: true
|
||||
icon {
|
||||
source: Qt.resolvedUrl("../icons/sleep.svg")
|
||||
height: height
|
||||
width: width
|
||||
color: "#181926"
|
||||
}
|
||||
background: Rectangle {
|
||||
id: sleepButtonBg
|
||||
color: "#ED8796"
|
||||
radius: 3
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "hovered"
|
||||
when: sleepButton.hovered
|
||||
PropertyChanges {
|
||||
target: sleepButtonBg
|
||||
color: "#F4DBD6"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
onClicked: sddm.suspend()
|
||||
}
|
||||
}
|
||||
50
sddm/everforest/Components/UserField.qml
Normal file
50
sddm/everforest/Components/UserField.qml
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
TextField {
|
||||
id: userField
|
||||
height: inputHeight
|
||||
width: inputWidth
|
||||
selectByMouse: true
|
||||
echoMode: TextInput.Normal
|
||||
selectionColor: "#6E738D"
|
||||
renderType: Text.NativeRendering
|
||||
font {
|
||||
family: config.Font
|
||||
pointSize: config.FontSize
|
||||
bold: true
|
||||
}
|
||||
color: "#CAD3F5"
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
placeholderText: "Username"
|
||||
text: userModel.lastUser
|
||||
background: Rectangle {
|
||||
id: userFieldBackground
|
||||
color: "#363A4F"
|
||||
radius: 3
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "focused"
|
||||
when: userField.activeFocus
|
||||
PropertyChanges {
|
||||
target: userFieldBackground
|
||||
color: "#494D64"
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "hovered"
|
||||
when: userField.hovered
|
||||
PropertyChanges {
|
||||
target: userFieldBackground
|
||||
color: "#494D64"
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
PropertyAnimation {
|
||||
properties: "color"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue