Merge branch 'main' into feat/llm-chat-tab
C++ / fmt (pull_request) Failing after 4s
C++ / build (pull_request) Failing after 9s
C++ / clang-tidy (pull_request) Failing after 11s
JS/TS / fmt (pull_request) Successful in 8s
JS/TS / lint (pull_request) Successful in 8s
Python / static (pull_request) Successful in 30s
Rust / build (pull_request) Successful in 48s
Python / verify (pull_request) Successful in 1m40s
Rust / fmt (pull_request) Successful in 25s
Rust / clippy (pull_request) Successful in 43s

This commit is contained in:
2026-10-06 13:33:41 +02:00
6 changed files with 46 additions and 66 deletions
+38
View File
@@ -5,7 +5,9 @@ import Quickshell
import Quickshell.Io
import QtQuick
import ZShell.Models
import ZShell.Internal
import ZShell.Config
import qs.Components
import qs.Services
import qs.Helpers
import qs.Paths
@@ -140,4 +142,40 @@ Searcher {
}
}
}
WallpaperService {
id: wallpaper
path: root.current
}
Variants {
model: Quickshell.screens
WallpaperObject {
readonly property var crops: root.getCrop(modelData.name)
required property var modelData
cropHeight: crops?.height ?? 1.0
cropWidth: crops?.width ?? 1.0
cropX: crops?.x ?? 0.0
cropY: crops?.y ?? 0.0
screen: modelData.name
service: wallpaper
zoom: crops?.zoom ?? 1.0
Behavior on cropHeight {
Anim {}
}
Behavior on cropWidth {
Anim {}
}
Behavior on cropX {
Anim {}
}
Behavior on cropY {
Anim {}
}
}
}
}
+2 -2
View File
@@ -1,9 +1,9 @@
import Quickshell
import QtQuick
import qs.Modules.Wallpaper
import qs.Helpers
Scope {
Component.onCompleted: {
Wallpaper;
Wallpapers;
}
}
+4 -4
View File
@@ -141,11 +141,11 @@ Item {
anchors.fill: parent
bottomLeftRadius: root.last ? Tokens.rounding.largeIncreased : Tokens.rounding.extraSmall
bottomRightRadius: root.last ? Tokens.rounding.largeIncreased : Tokens.rounding.extraSmall
topRightRadius: root.first ? Tokens.rounding.largeIncreased : Tokens.rounding.extraSmall
topLeftRadius: root.first ? Tokens.rounding.largeIncreased : Tokens.rounding.extraSmall
deformScale: 0
group: blobGroup
opacity: blobGroup.color.a * (root.enabled ? 1 : 0.5)
topLeftRadius: root.first ? Tokens.rounding.largeIncreased : Tokens.rounding.extraSmall
topRightRadius: root.first ? Tokens.rounding.largeIncreased : Tokens.rounding.extraSmall
}
RowButton {
@@ -154,11 +154,11 @@ Item {
anchors.left: parent.left
anchors.right: parent.right
color: "transparent"
first: root.first
height: Math.min(implicitHeight, parent.height)
icon: root.icon
subtext: root.subtext
last: root.last
first: root.first
subtext: root.subtext
text: root.label
transform: Matrix4x4 {
-51
View File
@@ -1,51 +0,0 @@
pragma Singleton
import Quickshell
import QtQuick
import ZShell.Internal
import qs.Components
import qs.Helpers
Singleton {
id: root
WallpaperService {
id: wallpaper
path: Wallpapers.current
}
Variants {
model: Quickshell.screens
WallpaperObject {
readonly property var crops: Wallpapers.getCrop(modelData.name)
required property var modelData
cropHeight: crops?.height ?? 1.0
cropWidth: crops?.width ?? 1.0
cropX: crops?.x ?? 0.0
cropY: crops?.y ?? 0.0
screen: modelData.name
service: wallpaper
zoom: crops?.zoom ?? 1.0
Behavior on cropHeight {
Anim {
}
}
Behavior on cropWidth {
Anim {
}
}
Behavior on cropX {
Anim {
}
}
Behavior on cropY {
Anim {
}
}
}
}
}
+2 -8
View File
@@ -614,17 +614,11 @@ QRectF WallpaperService::sourceRect(
const QVariantMap& crops, const QString& screen, const QSize& size) const {
QVariantMap crop = cropFor(crops, screen);
qreal zoom = crop.value("zoom", 1.0).toDouble();
if (zoom <= 0.0)
zoom = 1.0;
else if (zoom > 5.0)
zoom = 5.0;
QRectF rect(
crop.value("x", 0.0).toDouble(),
crop.value("y", 0.0).toDouble(),
crop.value("width", 1.0).toDouble() / zoom,
crop.value("height", 1.0).toDouble() / zoom);
crop.value("width", 1.0).toDouble(),
crop.value("height", 1.0).toDouble());
if (size.isEmpty() || rect.isEmpty() || m_image.isNull()) return rect;
-1
View File
@@ -9,7 +9,6 @@
import Quickshell
import Quickshell.Services.UPower
import qs.Modules
import qs.Modules.Wallpaper
import qs.Modules.Lock
import qs.Drawers
import qs.Modules.Polkit