From b701badbc76d364f63f26b77a1a3044ac06b001f Mon Sep 17 00:00:00 2001 From: Zacharias-Brohn Date: Thu, 19 Feb 2026 13:05:30 +0100 Subject: [PATCH] scheme refactor --- Config/Config.qml | 7 ++- Config/General.qml | 9 +++- Helpers/Wallpapers.qml | 4 +- Modules/TrayItem.qml | 40 +++++++++++------- .../__pycache__/scheme.cpython-313.pyc | Bin 7504 -> 7101 bytes cli/src/zshell/subcommands/scheme.py | 5 --- 6 files changed, 39 insertions(+), 26 deletions(-) diff --git a/Config/Config.qml b/Config/Config.qml index 20384a9..791e3db 100644 --- a/Config/Config.qml +++ b/Config/Config.qml @@ -122,8 +122,11 @@ Singleton { return { logo: general.logo, wallpaperPath: general.wallpaperPath, - wallust: general.wallust, - schemeGeneration: general.schemeGeneration, + color: { + wallust: general.color.wallust, + mode: general.color.mode, + schemeGeneration: general.color.schemeGeneration, + }, apps: { terminal: general.apps.terminal, audio: general.apps.audio, diff --git a/Config/General.qml b/Config/General.qml index 40968b7..0e57cf0 100644 --- a/Config/General.qml +++ b/Config/General.qml @@ -4,11 +4,16 @@ import Quickshell JsonObject { property string logo: "" property string wallpaperPath: Quickshell.env("HOME") + "/Pictures/Wallpapers" - property bool wallust: false - property bool schemeGeneration: true + property Color color: Color {} property Apps apps: Apps {} property Idle idle: Idle {} + component Color: JsonObject { + property bool wallust: false + property bool schemeGeneration: true + property string mode: "dark" + } + component Apps: JsonObject { property list terminal: ["kitty"] property list audio: ["pavucontrol"] diff --git a/Helpers/Wallpapers.qml b/Helpers/Wallpapers.qml index 6606220..9240135 100644 --- a/Helpers/Wallpapers.qml +++ b/Helpers/Wallpapers.qml @@ -27,14 +27,14 @@ Searcher { function preview(path: string): void { previewPath = path; if ( Config.general.schemeGeneration ) - Quickshell.execDetached(["sh", "-c", `zshell-cli scheme generate --image-path=${previewPath} --thumbnail-path=${Paths.cache}/imagecache/thumbnail.jpg --output=${Paths.state}/scheme.json --scheme=${Config.colors.schemeType}`]); + Quickshell.execDetached(["sh", "-c", `zshell-cli scheme generate --image-path ${previewPath} --thumbnail-path ${Paths.cache}/imagecache/thumbnail.jpg --output ${Paths.state}/scheme.json --scheme ${Config.colors.schemeType} --mode ${Config.general.color.mode}`]); showPreview = true; } function stopPreview(): void { showPreview = false; if ( Config.general.schemeGeneration ) - Quickshell.execDetached(["sh", "-c", `zshell-cli scheme generate --image-path=${root.actualCurrent} --thumbnail-path=${Paths.cache}/imagecache/thumbnail.jpg --output=${Paths.state}/scheme.json --scheme=${Config.colors.schemeType}`]); + Quickshell.execDetached(["sh", "-c", `zshell-cli scheme generate --image-path ${root.actualCurrent} --thumbnail-path ${Paths.cache}/imagecache/thumbnail.jpg --output ${Paths.state}/scheme.json --scheme ${Config.colors.schemeType} --mode ${Config.general.color.mode}`]); } list: wallpapers.entries diff --git a/Modules/TrayItem.qml b/Modules/TrayItem.qml index becd8a9..e2eb390 100644 --- a/Modules/TrayItem.qml +++ b/Modules/TrayItem.qml @@ -39,21 +39,31 @@ Item { } } - Image { - id: icon + ColoredIcon { + id: icon - property bool batteryHDPI: root.bar.screen.x < 0 && root.item.icon.includes("battery") - property bool nmHDPI: root.bar.screen.x < 0 && root.item.icon.includes("nm-") + anchors.centerIn: parent + source: root.item.icon + implicitSize: 22 + color: DynamicColors.palette.m3onSurface + layer.enabled: DynamicColors.light + } - anchors.centerIn: parent - width: batteryHDPI ? 26 : ( nmHDPI ? 25 : 22 ) - height: batteryHDPI ? 26 : ( nmHDPI ? 25 : 22 ) - source: root.item.icon - mipmap: true - smooth: ( batteryHDPI || nmHDPI ) ? false : true - asynchronous: true - sourceSize.width: ( batteryHDPI || nmHDPI ) ? 16 : 22 - sourceSize.height: ( batteryHDPI || nmHDPI ) ? 16 : 22 - fillMode: Image.PreserveAspectFit - } + // Image { + // id: icon + // + // property bool batteryHDPI: root.bar.screen.x < 0 && root.item.icon.includes("battery") + // property bool nmHDPI: root.bar.screen.x < 0 && root.item.icon.includes("nm-") + // + // anchors.centerIn: parent + // width: batteryHDPI ? 26 : ( nmHDPI ? 25 : 22 ) + // height: batteryHDPI ? 26 : ( nmHDPI ? 25 : 22 ) + // source: root.item.icon + // mipmap: true + // smooth: ( batteryHDPI || nmHDPI ) ? false : true + // asynchronous: true + // sourceSize.width: ( batteryHDPI || nmHDPI ) ? 16 : 22 + // sourceSize.height: ( batteryHDPI || nmHDPI ) ? 16 : 22 + // fillMode: Image.PreserveAspectFit + // } } diff --git a/cli/src/zshell/subcommands/__pycache__/scheme.cpython-313.pyc b/cli/src/zshell/subcommands/__pycache__/scheme.cpython-313.pyc index ce31c6b678befd952f21bda862c725c6d7e845cb..71fa4f894106bca816f890854e4b585d2df759bb 100644 GIT binary patch delta 548 zcmca$wbz{QGcPX}0}$-`J}om;WFy}l0Z~>UR~U#tt1&V#*fC9I2xSanocvKp$|ji6 z%7cL+k12#hi6N9Blqs0Wlo_NMD8_8SkjD}YVm9NOPoJ20I4;_U}{Ur z9_J&%J3KbleFuqx#XhNRekQ5S$k;GhNctyREy#@a$$~Ocj8iA;$Q($iU}ThiARsYA zWFp@ORuJa{2ZN~WjF5?bA2`8W9tK{~3BjGdA9%rBAsAN}%oStc=KCNHX38+|3Vx9V TF+VdiF!6t60x^p$fffP)Kr4Jh delta 919 zcmdmMe!+_GGcPX}0}%LsotDWbx{>dWfG7u$D-6V+&6pS%?3ku9gfa#(PJSpTr4-C) z<-x#^#}vw>0n!5miH-~m(LiMo5X3TBfLAn^A&3nof}legf#zxS= zOr}uNO_?F0c?|vz=r-1qVk1AybR0G^W7-(Pp~Mi%5XuzH0(S+o0Ye^3v>?PRF<>AF z!HhL!gs_4{L19)e%;4b<3^UefahL*x(oj~IU3qNLk}&yDwqUq8ESyt-q2Q~=z!1t7 zBn?xCphKDAmdYYT!K}$21oa}={EGO1yq6*%!VO5IgXMt4E%x-(lK70|5>5VFtU3AR zsYOMg7`erfR+OI$62HZqQJQ*-Eja_oPrSvPo0)fur6fNu7067inCu{=%osH}MQ9J> z?a7M5V!qF~h3*K8O}Ck3vw&qe$3l)3D(kgZYHumtVY1(Hr{#g9%jTY!g}pjmo)A{l z;WF7=_&a0HWPK4u#^TL^BHNgZa)C}O3Ih=pAi@VklmUrb-1(&?1*IkNDVabQGp5~Q zOfAX=N#;zp6xU|#pPVXwTwRP+YKij)1|YSj7))&`+2edfc!$Tvy6+%Su-GSq&A}4d zjEo(V>m`4(wSvs(pIj#;#W;8JOsNAYwTz6i4+JD;h)m@BzzX7g;9wAyoe?t8?*k{8 z%frAcIw82z_X97OD+J>TgSlc1+