config moved to c++ plugin, removed old qml + fileview implementation

This commit is contained in:
2026-08-13 02:25:26 +02:00
parent c29b91cd26
commit 3cd3209b28
341 changed files with 4851 additions and 3502 deletions
+28 -27
View File
@@ -4,7 +4,8 @@ import QtQuick
import QtQuick.Layouts
import qs.Components
import qs.Helpers
import qs.Config
import ZShell.Config
import qs.Services
ColumnLayout {
id: root
@@ -12,12 +13,12 @@ ColumnLayout {
required property var greeter
anchors.fill: parent
anchors.margins: Appearance.padding.large
spacing: Appearance.spacing.smaller
anchors.margins: Tokens.padding.large
spacing: Tokens.spacing.smaller
CustomText {
Layout.fillWidth: true
color: DynamicColors.palette.m3outline
color: Colors.palette.m3outline
elide: Text.ElideRight
font.family: Appearance.font.family.mono
font.weight: 500
@@ -28,7 +29,7 @@ ColumnLayout {
Layout.fillHeight: true
Layout.fillWidth: true
color: "transparent"
radius: Appearance.rounding.small
radius: Tokens.rounding.small
Loader {
active: opacity > 0
@@ -37,24 +38,24 @@ ColumnLayout {
Behavior on opacity {
Anim {
duration: Appearance.anim.durations.extraLarge
duration: Tokens.anim.durations.extraLarge
}
}
sourceComponent: ColumnLayout {
spacing: Appearance.spacing.large
spacing: Tokens.spacing.large
MaterialIcon {
Layout.alignment: Qt.AlignHCenter
color: DynamicColors.palette.m3outlineVariant
font.pointSize: Appearance.font.size.extraLarge * 2
color: Colors.palette.m3outlineVariant
font.pointSize: Tokens.font.size.extraLarge * 2
text: "desktop_windows"
}
CustomText {
Layout.alignment: Qt.AlignHCenter
color: DynamicColors.palette.m3outlineVariant
color: Colors.palette.m3outlineVariant
font.family: Appearance.font.family.mono
font.pointSize: Appearance.font.size.large
font.pointSize: Tokens.font.size.large
font.weight: 500
text: qsTr("No Sessions Found")
}
@@ -69,7 +70,7 @@ ColumnLayout {
currentIndex: root.greeter.sessionIndex
highlightFollowsCurrentItem: false
model: root.greeter.sessions
spacing: Appearance.spacing.small
spacing: Tokens.spacing.small
delegate: CustomRect {
id: session
@@ -79,8 +80,8 @@ ColumnLayout {
anchors.left: parent?.left
anchors.right: parent?.right
implicitHeight: row.implicitHeight + Appearance.padding.normal * 2
radius: Appearance.rounding.normal - Appearance.padding.smaller
implicitHeight: row.implicitHeight + Tokens.padding.normal * 2
radius: Tokens.rounding.normal - Tokens.padding.smaller
StateLayer {
onClicked: {
@@ -92,50 +93,50 @@ ColumnLayout {
id: row
anchors.fill: parent
anchors.margins: Appearance.padding.normal
spacing: Appearance.spacing.normal
anchors.margins: Tokens.padding.normal
spacing: Tokens.spacing.normal
MaterialIcon {
color: session.index === sessions.currentIndex ? DynamicColors.palette.m3onPrimary : DynamicColors.palette.m3onSurfaceVariant
font.pointSize: Appearance.font.size.extraLarge
color: session.index === sessions.currentIndex ? Colors.palette.m3onPrimary : Colors.palette.m3onSurfaceVariant
font.pointSize: Tokens.font.size.extraLarge
text: modelData.kind === "x11" ? "tv" : "desktop_windows"
}
ColumnLayout {
Layout.fillWidth: true
spacing: Appearance.spacing.small / 2
spacing: Tokens.spacing.small / 2
CustomText {
Layout.fillWidth: true
color: session.index === sessions.currentIndex ? DynamicColors.palette.m3onPrimary : DynamicColors.palette.m3onSurface
color: session.index === sessions.currentIndex ? Colors.palette.m3onPrimary : Colors.palette.m3onSurface
elide: Text.ElideRight
font.pointSize: Appearance.font.size.normal
font.pointSize: Tokens.font.size.normal
font.weight: 600
text: modelData.name
}
CustomText {
Layout.fillWidth: true
color: session.index === sessions.currentIndex ? DynamicColors.palette.m3onPrimaryFixedVariant : DynamicColors.palette.m3onSurfaceVariant
color: session.index === sessions.currentIndex ? Colors.palette.m3onPrimaryFixedVariant : Colors.palette.m3onSurfaceVariant
elide: Text.ElideRight
font.family: Appearance.font.family.mono
font.pointSize: Appearance.font.size.small
font.pointSize: Tokens.font.size.small
text: modelData.kind
}
}
}
}
highlight: CustomRect {
color: DynamicColors.palette.m3primary
color: Colors.palette.m3primary
implicitHeight: sessions.currentItem?.implicitHeight ?? 0
implicitWidth: sessions.width
radius: Appearance.rounding.normal - Appearance.padding.smaller
radius: Tokens.rounding.normal - Tokens.padding.smaller
y: sessions.currentItem?.y ?? 0
Behavior on y {
Anim {
duration: Appearance.anim.durations.small
easing.bezierCurve: Appearance.anim.curves.expressiveEffects
duration: Tokens.anim.durations.small
easing.bezierCurve: Tokens.anim.curves.expressiveEffects
}
}
}