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
+31 -30
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,20 +13,20 @@ ColumnLayout {
required property int rootHeight
anchors.left: parent.left
anchors.margins: Appearance.padding.large * 2
anchors.margins: Tokens.padding.large * 2
anchors.right: parent.right
spacing: Appearance.spacing.small
spacing: Tokens.spacing.small
Loader {
Layout.alignment: Qt.AlignHCenter
Layout.bottomMargin: -Appearance.padding.large
Layout.topMargin: Appearance.padding.large * 2
Layout.bottomMargin: -Tokens.padding.large
Layout.topMargin: Tokens.padding.large * 2
active: root.rootHeight > 610
visible: active
sourceComponent: CustomText {
color: DynamicColors.palette.m3primary
font.pointSize: Appearance.font.size.extraLarge
color: Colors.palette.m3primary
font.pointSize: Tokens.font.size.extraLarge
font.weight: 500
text: qsTr("Weather")
}
@@ -33,24 +34,24 @@ ColumnLayout {
RowLayout {
Layout.fillWidth: true
spacing: Appearance.spacing.large
spacing: Tokens.spacing.large
MaterialIcon {
animate: true
color: DynamicColors.palette.m3secondary
font.pointSize: Appearance.font.size.extraLarge * 2.5
color: Colors.palette.m3secondary
font.pointSize: Tokens.font.size.extraLarge * 2.5
text: Weather.icon
}
ColumnLayout {
spacing: Appearance.spacing.small
spacing: Tokens.spacing.small
CustomText {
Layout.fillWidth: true
animate: true
color: DynamicColors.palette.m3secondary
color: Colors.palette.m3secondary
elide: Text.ElideRight
font.pointSize: Appearance.font.size.large
font.pointSize: Tokens.font.size.large
font.weight: 500
text: Weather.description
}
@@ -58,27 +59,27 @@ ColumnLayout {
CustomText {
Layout.fillWidth: true
animate: true
color: DynamicColors.palette.m3onSurfaceVariant
color: Colors.palette.m3onSurfaceVariant
elide: Text.ElideRight
font.pointSize: Appearance.font.size.normal
font.pointSize: Tokens.font.size.normal
text: qsTr("Humidity: %1%").arg(Weather.humidity)
}
}
Loader {
Layout.rightMargin: Appearance.padding.smaller
Layout.rightMargin: Tokens.padding.smaller
active: root.width > 400
visible: active
sourceComponent: ColumnLayout {
spacing: Appearance.spacing.small
spacing: Tokens.spacing.small
CustomText {
Layout.fillWidth: true
animate: true
color: DynamicColors.palette.m3primary
color: Colors.palette.m3primary
elide: Text.ElideLeft
font.pointSize: Appearance.font.size.extraLarge
font.pointSize: Tokens.font.size.extraLarge
font.weight: 500
horizontalAlignment: Text.AlignRight
text: Weather.temp
@@ -87,9 +88,9 @@ ColumnLayout {
CustomText {
Layout.fillWidth: true
animate: true
color: DynamicColors.palette.m3outline
color: Colors.palette.m3outline
elide: Text.ElideLeft
font.pointSize: Appearance.font.size.smaller
font.pointSize: Tokens.font.size.smaller
horizontalAlignment: Text.AlignRight
text: qsTr("Feels like: %1").arg(Weather.feelsLike)
}
@@ -100,14 +101,14 @@ ColumnLayout {
Loader {
id: forecastLoader
Layout.bottomMargin: Appearance.padding.large * 2
Layout.bottomMargin: Tokens.padding.large * 2
Layout.fillWidth: true
Layout.topMargin: Appearance.spacing.smaller
Layout.topMargin: Tokens.spacing.smaller
active: root.rootHeight > 820
visible: active
sourceComponent: RowLayout {
spacing: Appearance.spacing.large
spacing: Tokens.spacing.large
Repeater {
model: {
@@ -127,12 +128,12 @@ ColumnLayout {
required property var modelData
Layout.fillWidth: true
spacing: Appearance.spacing.small
spacing: Tokens.spacing.small
CustomText {
Layout.fillWidth: true
color: DynamicColors.palette.m3outline
font.pointSize: Appearance.font.size.larger
color: Colors.palette.m3outline
font.pointSize: Tokens.font.size.larger
horizontalAlignment: Text.AlignHCenter
text: {
const hour = forecastHour.modelData?.hour ?? 0;
@@ -142,15 +143,15 @@ ColumnLayout {
MaterialIcon {
Layout.alignment: Qt.AlignHCenter
font.pointSize: Appearance.font.size.extraLarge * 1.5
font.pointSize: Tokens.font.size.extraLarge * 1.5
font.weight: 500
text: forecastHour.modelData?.icon ?? "cloud_alert"
}
CustomText {
Layout.alignment: Qt.AlignHCenter
color: DynamicColors.palette.m3secondary
font.pointSize: Appearance.font.size.larger
color: Colors.palette.m3secondary
font.pointSize: Tokens.font.size.larger
text: Config.services.useFahrenheit ? `${forecastHour.modelData?.tempF ?? 0}°F` : `${forecastHour.modelData?.tempC ?? 0}°C`
}
}