summaryrefslogtreecommitdiff
path: root/modules/controlcenter/appearance/sections
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2026-01-09 15:15:49 -0500
committerFreya Murphy <freya@freyacat.org>2026-03-16 09:24:54 -0400
commit50bbd6f464fd32d3ce345681c6448ef963fb6e81 (patch)
treed29ac42d5faaf2c4beb3b8ef3f138729a09de7bf /modules/controlcenter/appearance/sections
parentonly show active workspaces, fix colors (diff)
downloadcaelestia-shell-50bbd6f464fd32d3ce345681c6448ef963fb6e81.tar.gz
caelestia-shell-50bbd6f464fd32d3ce345681c6448ef963fb6e81.tar.bz2
caelestia-shell-50bbd6f464fd32d3ce345681c6448ef963fb6e81.zip
remove more stuffff
Diffstat (limited to 'modules/controlcenter/appearance/sections')
-rw-r--r--modules/controlcenter/appearance/sections/AnimationsSection.qml44
-rw-r--r--modules/controlcenter/appearance/sections/BackgroundSection.qml345
-rw-r--r--modules/controlcenter/appearance/sections/BorderSection.qml68
-rw-r--r--modules/controlcenter/appearance/sections/ColorSchemeSection.qml145
-rw-r--r--modules/controlcenter/appearance/sections/ColorVariantSection.qml91
-rw-r--r--modules/controlcenter/appearance/sections/FontsSection.qml282
-rw-r--r--modules/controlcenter/appearance/sections/ScalesSection.qml92
-rw-r--r--modules/controlcenter/appearance/sections/ThemeModeSection.qml23
-rw-r--r--modules/controlcenter/appearance/sections/TransparencySection.qml79
9 files changed, 0 insertions, 1169 deletions
diff --git a/modules/controlcenter/appearance/sections/AnimationsSection.qml b/modules/controlcenter/appearance/sections/AnimationsSection.qml
deleted file mode 100644
index 0cba5ce..0000000
--- a/modules/controlcenter/appearance/sections/AnimationsSection.qml
+++ /dev/null
@@ -1,44 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../components"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- id: root
-
- required property var rootPane
-
- title: qsTr("Animations")
- showBackground: true
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Animation duration scale")
- value: rootPane.animDurationsScale
- from: 0.1
- to: 5.0
- decimals: 1
- suffix: "×"
- validator: DoubleValidator {
- bottom: 0.1
- top: 5.0
- }
-
- onValueModified: newValue => {
- rootPane.animDurationsScale = newValue;
- rootPane.saveConfig();
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/BackgroundSection.qml b/modules/controlcenter/appearance/sections/BackgroundSection.qml
deleted file mode 100644
index 9d6bc6e..0000000
--- a/modules/controlcenter/appearance/sections/BackgroundSection.qml
+++ /dev/null
@@ -1,345 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../components"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- id: root
-
- required property var rootPane
-
- title: qsTr("Background")
- showBackground: true
-
- SwitchRow {
- label: qsTr("Background enabled")
- checked: rootPane.backgroundEnabled
- onToggled: checked => {
- rootPane.backgroundEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- SwitchRow {
- label: qsTr("Wallpaper enabled")
- checked: rootPane.wallpaperEnabled
- onToggled: checked => {
- rootPane.wallpaperEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- StyledText {
- Layout.topMargin: Appearance.spacing.normal
- text: qsTr("Desktop Clock")
- font.pointSize: Appearance.font.size.larger
- font.weight: 500
- }
-
- SwitchRow {
- label: qsTr("Desktop Clock enabled")
- checked: rootPane.desktopClockEnabled
- onToggled: checked => {
- rootPane.desktopClockEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- SectionContainer {
- id: posContainer
-
- contentSpacing: Appearance.spacing.small
- z: 1
-
- readonly property var pos: (rootPane.desktopClockPosition || "top-left").split('-')
- readonly property string currentV: pos[0]
- readonly property string currentH: pos[1]
-
- function updateClockPos(v, h) {
- rootPane.desktopClockPosition = v + "-" + h;
- rootPane.saveConfig();
- }
-
- StyledText {
- text: qsTr("Positioning")
- font.pointSize: Appearance.font.size.larger
- font.weight: 500
- }
-
- SplitButtonRow {
- label: qsTr("Vertical Position")
- enabled: rootPane.desktopClockEnabled
-
- menuItems: [
- MenuItem {
- text: qsTr("Top")
- icon: "vertical_align_top"
- property string val: "top"
- },
- MenuItem {
- text: qsTr("Middle")
- icon: "vertical_align_center"
- property string val: "middle"
- },
- MenuItem {
- text: qsTr("Bottom")
- icon: "vertical_align_bottom"
- property string val: "bottom"
- }
- ]
-
- Component.onCompleted: {
- for (let i = 0; i < menuItems.length; i++) {
- if (menuItems[i].val === posContainer.currentV)
- active = menuItems[i];
- }
- }
-
- // The signal from SplitButtonRow
- onSelected: item => posContainer.updateClockPos(item.val, posContainer.currentH)
- }
-
- SplitButtonRow {
- label: qsTr("Horizontal Position")
- enabled: rootPane.desktopClockEnabled
- expandedZ: 99
-
- menuItems: [
- MenuItem {
- text: qsTr("Left")
- icon: "align_horizontal_left"
- property string val: "left"
- },
- MenuItem {
- text: qsTr("Center")
- icon: "align_horizontal_center"
- property string val: "center"
- },
- MenuItem {
- text: qsTr("Right")
- icon: "align_horizontal_right"
- property string val: "right"
- }
- ]
-
- Component.onCompleted: {
- for (let i = 0; i < menuItems.length; i++) {
- if (menuItems[i].val === posContainer.currentH)
- active = menuItems[i];
- }
- }
-
- onSelected: item => posContainer.updateClockPos(posContainer.currentV, item.val)
- }
- }
-
- SwitchRow {
- label: qsTr("Invert colors")
- checked: rootPane.desktopClockInvertColors
- onToggled: checked => {
- rootPane.desktopClockInvertColors = checked;
- rootPane.saveConfig();
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.small
-
- StyledText {
- text: qsTr("Shadow")
- font.pointSize: Appearance.font.size.larger
- font.weight: 500
- }
-
- SwitchRow {
- label: qsTr("Enabled")
- checked: rootPane.desktopClockShadowEnabled
- onToggled: checked => {
- rootPane.desktopClockShadowEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Opacity")
- value: rootPane.desktopClockShadowOpacity * 100
- from: 0
- to: 100
- suffix: "%"
- validator: IntValidator {
- bottom: 0
- top: 100
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- rootPane.desktopClockShadowOpacity = newValue / 100;
- rootPane.saveConfig();
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Blur")
- value: rootPane.desktopClockShadowBlur * 100
- from: 0
- to: 100
- suffix: "%"
- validator: IntValidator {
- bottom: 0
- top: 100
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- rootPane.desktopClockShadowBlur = newValue / 100;
- rootPane.saveConfig();
- }
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.small
-
- StyledText {
- text: qsTr("Background")
- font.pointSize: Appearance.font.size.larger
- font.weight: 500
- }
-
- SwitchRow {
- label: qsTr("Enabled")
- checked: rootPane.desktopClockBackgroundEnabled
- onToggled: checked => {
- rootPane.desktopClockBackgroundEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- SwitchRow {
- label: qsTr("Blur enabled")
- checked: rootPane.desktopClockBackgroundBlur
- onToggled: checked => {
- rootPane.desktopClockBackgroundBlur = checked;
- rootPane.saveConfig();
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Opacity")
- value: rootPane.desktopClockBackgroundOpacity * 100
- from: 0
- to: 100
- suffix: "%"
- validator: IntValidator {
- bottom: 0
- top: 100
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- rootPane.desktopClockBackgroundOpacity = newValue / 100;
- rootPane.saveConfig();
- }
- }
- }
- }
-
- StyledText {
- Layout.topMargin: Appearance.spacing.normal
- text: qsTr("Visualiser")
- font.pointSize: Appearance.font.size.larger
- font.weight: 500
- }
-
- SwitchRow {
- label: qsTr("Visualiser enabled")
- checked: rootPane.visualiserEnabled
- onToggled: checked => {
- rootPane.visualiserEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- SwitchRow {
- label: qsTr("Visualiser auto hide")
- checked: rootPane.visualiserAutoHide
- onToggled: checked => {
- rootPane.visualiserAutoHide = checked;
- rootPane.saveConfig();
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Visualiser rounding")
- value: rootPane.visualiserRounding
- from: 0
- to: 10
- stepSize: 1
- validator: IntValidator {
- bottom: 0
- top: 10
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- rootPane.visualiserRounding = Math.round(newValue);
- rootPane.saveConfig();
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Visualiser spacing")
- value: rootPane.visualiserSpacing
- from: 0
- to: 2
- validator: DoubleValidator {
- bottom: 0
- top: 2
- }
-
- onValueModified: newValue => {
- rootPane.visualiserSpacing = newValue;
- rootPane.saveConfig();
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/BorderSection.qml b/modules/controlcenter/appearance/sections/BorderSection.qml
deleted file mode 100644
index 9532d70..0000000
--- a/modules/controlcenter/appearance/sections/BorderSection.qml
+++ /dev/null
@@ -1,68 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../components"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- id: root
-
- required property var rootPane
-
- title: qsTr("Border")
- showBackground: true
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Border rounding")
- value: rootPane.borderRounding
- from: 0.1
- to: 100
- decimals: 1
- suffix: "px"
- validator: DoubleValidator {
- bottom: 0.1
- top: 100
- }
-
- onValueModified: newValue => {
- rootPane.borderRounding = newValue;
- rootPane.saveConfig();
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Border thickness")
- value: rootPane.borderThickness
- from: 0.1
- to: 100
- decimals: 1
- suffix: "px"
- validator: DoubleValidator {
- bottom: 0.1
- top: 100
- }
-
- onValueModified: newValue => {
- rootPane.borderThickness = newValue;
- rootPane.saveConfig();
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/ColorSchemeSection.qml b/modules/controlcenter/appearance/sections/ColorSchemeSection.qml
deleted file mode 100644
index 95cb4b7..0000000
--- a/modules/controlcenter/appearance/sections/ColorSchemeSection.qml
+++ /dev/null
@@ -1,145 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../../launcher/services"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import Quickshell
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- title: qsTr("Color scheme")
- description: qsTr("Available color schemes")
- showBackground: true
-
- ColumnLayout {
- Layout.fillWidth: true
- spacing: Appearance.spacing.small / 2
-
- Repeater {
- model: Schemes.list
-
- delegate: StyledRect {
- required property var modelData
-
- Layout.fillWidth: true
-
- readonly property string schemeKey: `${modelData.name} ${modelData.flavour}`
- readonly property bool isCurrent: schemeKey === Schemes.currentScheme
-
- color: Qt.alpha(Colours.tPalette.m3surfaceContainer, isCurrent ? Colours.tPalette.m3surfaceContainer.a : 0)
- radius: Appearance.rounding.normal
- border.width: isCurrent ? 1 : 0
- border.color: Colours.palette.m3primary
-
- StateLayer {
- function onClicked(): void {
- const name = modelData.name;
- const flavour = modelData.flavour;
- const schemeKey = `${name} ${flavour}`;
-
- Schemes.currentScheme = schemeKey;
- Quickshell.execDetached(["caelestia", "scheme", "set", "-n", name, "-f", flavour]);
-
- Qt.callLater(() => {
- reloadTimer.restart();
- });
- }
- }
-
- Timer {
- id: reloadTimer
- interval: 300
- onTriggered: {
- Schemes.reload();
- }
- }
-
- RowLayout {
- id: schemeRow
-
- anchors.fill: parent
- anchors.margins: Appearance.padding.normal
-
- spacing: Appearance.spacing.normal
-
- StyledRect {
- id: preview
-
- Layout.alignment: Qt.AlignVCenter
-
- border.width: 1
- border.color: Qt.alpha(`#${modelData.colours?.outline}`, 0.5)
-
- color: `#${modelData.colours?.surface}`
- radius: Appearance.rounding.full
- implicitWidth: iconPlaceholder.implicitWidth
- implicitHeight: iconPlaceholder.implicitWidth
-
- MaterialIcon {
- id: iconPlaceholder
- visible: false
- text: "circle"
- font.pointSize: Appearance.font.size.large
- }
-
- Item {
- anchors.top: parent.top
- anchors.bottom: parent.bottom
- anchors.right: parent.right
-
- implicitWidth: parent.implicitWidth / 2
- clip: true
-
- StyledRect {
- anchors.top: parent.top
- anchors.bottom: parent.bottom
- anchors.right: parent.right
-
- implicitWidth: preview.implicitWidth
- color: `#${modelData.colours?.primary}`
- radius: Appearance.rounding.full
- }
- }
- }
-
- Column {
- Layout.fillWidth: true
- spacing: 0
-
- StyledText {
- text: modelData.flavour ?? ""
- font.pointSize: Appearance.font.size.normal
- }
-
- StyledText {
- text: modelData.name ?? ""
- font.pointSize: Appearance.font.size.small
- color: Colours.palette.m3outline
-
- elide: Text.ElideRight
- anchors.left: parent.left
- anchors.right: parent.right
- }
- }
-
- Loader {
- active: isCurrent
-
- sourceComponent: MaterialIcon {
- text: "check"
- color: Colours.palette.m3onSurfaceVariant
- font.pointSize: Appearance.font.size.large
- }
- }
- }
-
- implicitHeight: schemeRow.implicitHeight + Appearance.padding.normal * 2
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/ColorVariantSection.qml b/modules/controlcenter/appearance/sections/ColorVariantSection.qml
deleted file mode 100644
index 3aa17dd..0000000
--- a/modules/controlcenter/appearance/sections/ColorVariantSection.qml
+++ /dev/null
@@ -1,91 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../../launcher/services"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import Quickshell
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- title: qsTr("Color variant")
- description: qsTr("Material theme variant")
- showBackground: true
-
- ColumnLayout {
- Layout.fillWidth: true
- spacing: Appearance.spacing.small / 2
-
- Repeater {
- model: M3Variants.list
-
- delegate: StyledRect {
- required property var modelData
-
- Layout.fillWidth: true
-
- color: Qt.alpha(Colours.tPalette.m3surfaceContainer, modelData.variant === Schemes.currentVariant ? Colours.tPalette.m3surfaceContainer.a : 0)
- radius: Appearance.rounding.normal
- border.width: modelData.variant === Schemes.currentVariant ? 1 : 0
- border.color: Colours.palette.m3primary
-
- StateLayer {
- function onClicked(): void {
- const variant = modelData.variant;
-
- Schemes.currentVariant = variant;
- Quickshell.execDetached(["caelestia", "scheme", "set", "-v", variant]);
-
- Qt.callLater(() => {
- reloadTimer.restart();
- });
- }
- }
-
- Timer {
- id: reloadTimer
- interval: 300
- onTriggered: {
- Schemes.reload();
- }
- }
-
- RowLayout {
- id: variantRow
-
- anchors.left: parent.left
- anchors.right: parent.right
- anchors.verticalCenter: parent.verticalCenter
- anchors.margins: Appearance.padding.normal
-
- spacing: Appearance.spacing.normal
-
- MaterialIcon {
- text: modelData.icon
- font.pointSize: Appearance.font.size.large
- fill: modelData.variant === Schemes.currentVariant ? 1 : 0
- }
-
- StyledText {
- Layout.fillWidth: true
- text: modelData.name
- font.weight: modelData.variant === Schemes.currentVariant ? 500 : 400
- }
-
- MaterialIcon {
- visible: modelData.variant === Schemes.currentVariant
- text: "check"
- color: Colours.palette.m3primary
- font.pointSize: Appearance.font.size.large
- }
- }
-
- implicitHeight: variantRow.implicitHeight + Appearance.padding.normal * 2
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/FontsSection.qml b/modules/controlcenter/appearance/sections/FontsSection.qml
deleted file mode 100644
index 3988863..0000000
--- a/modules/controlcenter/appearance/sections/FontsSection.qml
+++ /dev/null
@@ -1,282 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../components"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- id: root
-
- required property var rootPane
-
- title: qsTr("Fonts")
- showBackground: true
-
- CollapsibleSection {
- id: materialFontSection
- title: qsTr("Material font family")
- expanded: true
- showBackground: true
- nested: true
-
- Loader {
- id: materialFontLoader
- Layout.fillWidth: true
- Layout.preferredHeight: item ? Math.min(item.contentHeight, 300) : 0
- active: materialFontSection.expanded
-
- sourceComponent: StyledListView {
- id: materialFontList
- property alias contentHeight: materialFontList.contentHeight
-
- clip: true
- spacing: Appearance.spacing.small / 2
- model: Qt.fontFamilies()
-
- StyledScrollBar.vertical: StyledScrollBar {
- flickable: materialFontList
- }
-
- delegate: StyledRect {
- required property string modelData
- required property int index
-
- width: ListView.view.width
-
- readonly property bool isCurrent: modelData === rootPane.fontFamilyMaterial
- color: Qt.alpha(Colours.tPalette.m3surfaceContainer, isCurrent ? Colours.tPalette.m3surfaceContainer.a : 0)
- radius: Appearance.rounding.normal
- border.width: isCurrent ? 1 : 0
- border.color: Colours.palette.m3primary
-
- StateLayer {
- function onClicked(): void {
- rootPane.fontFamilyMaterial = modelData;
- rootPane.saveConfig();
- }
- }
-
- RowLayout {
- id: fontFamilyMaterialRow
-
- anchors.left: parent.left
- anchors.right: parent.right
- anchors.verticalCenter: parent.verticalCenter
- anchors.margins: Appearance.padding.normal
-
- spacing: Appearance.spacing.normal
-
- StyledText {
- text: modelData
- font.pointSize: Appearance.font.size.normal
- }
-
- Item {
- Layout.fillWidth: true
- }
-
- Loader {
- active: isCurrent
-
- sourceComponent: MaterialIcon {
- text: "check"
- color: Colours.palette.m3onSurfaceVariant
- font.pointSize: Appearance.font.size.large
- }
- }
- }
-
- implicitHeight: fontFamilyMaterialRow.implicitHeight + Appearance.padding.normal * 2
- }
- }
- }
- }
-
- CollapsibleSection {
- id: monoFontSection
- title: qsTr("Monospace font family")
- expanded: false
- showBackground: true
- nested: true
-
- Loader {
- Layout.fillWidth: true
- Layout.preferredHeight: item ? Math.min(item.contentHeight, 300) : 0
- active: monoFontSection.expanded
-
- sourceComponent: StyledListView {
- id: monoFontList
- property alias contentHeight: monoFontList.contentHeight
-
- clip: true
- spacing: Appearance.spacing.small / 2
- model: Qt.fontFamilies()
-
- StyledScrollBar.vertical: StyledScrollBar {
- flickable: monoFontList
- }
-
- delegate: StyledRect {
- required property string modelData
- required property int index
-
- width: ListView.view.width
-
- readonly property bool isCurrent: modelData === rootPane.fontFamilyMono
- color: Qt.alpha(Colours.tPalette.m3surfaceContainer, isCurrent ? Colours.tPalette.m3surfaceContainer.a : 0)
- radius: Appearance.rounding.normal
- border.width: isCurrent ? 1 : 0
- border.color: Colours.palette.m3primary
-
- StateLayer {
- function onClicked(): void {
- rootPane.fontFamilyMono = modelData;
- rootPane.saveConfig();
- }
- }
-
- RowLayout {
- id: fontFamilyMonoRow
-
- anchors.left: parent.left
- anchors.right: parent.right
- anchors.verticalCenter: parent.verticalCenter
- anchors.margins: Appearance.padding.normal
-
- spacing: Appearance.spacing.normal
-
- StyledText {
- text: modelData
- font.pointSize: Appearance.font.size.normal
- }
-
- Item {
- Layout.fillWidth: true
- }
-
- Loader {
- active: isCurrent
-
- sourceComponent: MaterialIcon {
- text: "check"
- color: Colours.palette.m3onSurfaceVariant
- font.pointSize: Appearance.font.size.large
- }
- }
- }
-
- implicitHeight: fontFamilyMonoRow.implicitHeight + Appearance.padding.normal * 2
- }
- }
- }
- }
-
- CollapsibleSection {
- id: sansFontSection
- title: qsTr("Sans-serif font family")
- expanded: false
- showBackground: true
- nested: true
-
- Loader {
- Layout.fillWidth: true
- Layout.preferredHeight: item ? Math.min(item.contentHeight, 300) : 0
- active: sansFontSection.expanded
-
- sourceComponent: StyledListView {
- id: sansFontList
- property alias contentHeight: sansFontList.contentHeight
-
- clip: true
- spacing: Appearance.spacing.small / 2
- model: Qt.fontFamilies()
-
- StyledScrollBar.vertical: StyledScrollBar {
- flickable: sansFontList
- }
-
- delegate: StyledRect {
- required property string modelData
- required property int index
-
- width: ListView.view.width
-
- readonly property bool isCurrent: modelData === rootPane.fontFamilySans
- color: Qt.alpha(Colours.tPalette.m3surfaceContainer, isCurrent ? Colours.tPalette.m3surfaceContainer.a : 0)
- radius: Appearance.rounding.normal
- border.width: isCurrent ? 1 : 0
- border.color: Colours.palette.m3primary
-
- StateLayer {
- function onClicked(): void {
- rootPane.fontFamilySans = modelData;
- rootPane.saveConfig();
- }
- }
-
- RowLayout {
- id: fontFamilySansRow
-
- anchors.left: parent.left
- anchors.right: parent.right
- anchors.verticalCenter: parent.verticalCenter
- anchors.margins: Appearance.padding.normal
-
- spacing: Appearance.spacing.normal
-
- StyledText {
- text: modelData
- font.pointSize: Appearance.font.size.normal
- }
-
- Item {
- Layout.fillWidth: true
- }
-
- Loader {
- active: isCurrent
-
- sourceComponent: MaterialIcon {
- text: "check"
- color: Colours.palette.m3onSurfaceVariant
- font.pointSize: Appearance.font.size.large
- }
- }
- }
-
- implicitHeight: fontFamilySansRow.implicitHeight + Appearance.padding.normal * 2
- }
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Font size scale")
- value: rootPane.fontSizeScale
- from: 0.7
- to: 1.5
- decimals: 2
- suffix: "×"
- validator: DoubleValidator {
- bottom: 0.7
- top: 1.5
- }
-
- onValueModified: newValue => {
- rootPane.fontSizeScale = newValue;
- rootPane.saveConfig();
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/ScalesSection.qml b/modules/controlcenter/appearance/sections/ScalesSection.qml
deleted file mode 100644
index b0e6e38..0000000
--- a/modules/controlcenter/appearance/sections/ScalesSection.qml
+++ /dev/null
@@ -1,92 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../components"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- id: root
-
- required property var rootPane
-
- title: qsTr("Scales")
- showBackground: true
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Padding scale")
- value: rootPane.paddingScale
- from: 0.5
- to: 2.0
- decimals: 1
- suffix: "×"
- validator: DoubleValidator {
- bottom: 0.5
- top: 2.0
- }
-
- onValueModified: newValue => {
- rootPane.paddingScale = newValue;
- rootPane.saveConfig();
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Rounding scale")
- value: rootPane.roundingScale
- from: 0.1
- to: 5.0
- decimals: 1
- suffix: "×"
- validator: DoubleValidator {
- bottom: 0.1
- top: 5.0
- }
-
- onValueModified: newValue => {
- rootPane.roundingScale = newValue;
- rootPane.saveConfig();
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Spacing scale")
- value: rootPane.spacingScale
- from: 0.1
- to: 2.0
- decimals: 1
- suffix: "×"
- validator: DoubleValidator {
- bottom: 0.1
- top: 2.0
- }
-
- onValueModified: newValue => {
- rootPane.spacingScale = newValue;
- rootPane.saveConfig();
- }
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/ThemeModeSection.qml b/modules/controlcenter/appearance/sections/ThemeModeSection.qml
deleted file mode 100644
index 04eed91..0000000
--- a/modules/controlcenter/appearance/sections/ThemeModeSection.qml
+++ /dev/null
@@ -1,23 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-
-CollapsibleSection {
- title: qsTr("Theme mode")
- description: qsTr("Light or dark theme")
- showBackground: true
-
- SwitchRow {
- label: qsTr("Dark mode")
- checked: !Colours.currentLight
- onToggled: checked => {
- Colours.setMode(checked ? "dark" : "light");
- }
- }
-}
diff --git a/modules/controlcenter/appearance/sections/TransparencySection.qml b/modules/controlcenter/appearance/sections/TransparencySection.qml
deleted file mode 100644
index 9a48629..0000000
--- a/modules/controlcenter/appearance/sections/TransparencySection.qml
+++ /dev/null
@@ -1,79 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../../components"
-import qs.components
-import qs.components.controls
-import qs.components.containers
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-CollapsibleSection {
- id: root
-
- required property var rootPane
-
- title: qsTr("Transparency")
- showBackground: true
-
- SwitchRow {
- label: qsTr("Transparency enabled")
- checked: rootPane.transparencyEnabled
- onToggled: checked => {
- rootPane.transparencyEnabled = checked;
- rootPane.saveConfig();
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Transparency base")
- value: rootPane.transparencyBase * 100
- from: 0
- to: 100
- suffix: "%"
- validator: IntValidator {
- bottom: 0
- top: 100
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- rootPane.transparencyBase = newValue / 100;
- rootPane.saveConfig();
- }
- }
- }
-
- SectionContainer {
- contentSpacing: Appearance.spacing.normal
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Transparency layers")
- value: rootPane.transparencyLayers * 100
- from: 0
- to: 100
- suffix: "%"
- validator: IntValidator {
- bottom: 0
- top: 100
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- rootPane.transparencyLayers = newValue / 100;
- rootPane.saveConfig();
- }
- }
- }
-}