From d54ad65b50904aded25151e89bc232c3a3febd2d Mon Sep 17 00:00:00 2001 From: end-4 <97237370+end-4@users.noreply.github.com> Date: Sat, 13 Dec 2025 22:07:47 +0100 Subject: [PATCH] waffles: taskview: fix sizes not getting updated --- .../waffle/taskView/TaskViewContent.qml | 30 ++++++++++++------- .../waffle/taskView/TaskViewWindow.qml | 7 +++-- .../waffle/taskView/TaskViewWorkspace.qml | 6 ++-- 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewContent.qml b/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewContent.qml index f767ee435..842395cd9 100644 --- a/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewContent.qml +++ b/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewContent.qml @@ -100,26 +100,34 @@ Rectangle { clip: true - model: IndexModel { - count: arrangedToplevels.length + model: ScriptModel { + values: root.arrangedToplevels } delegate: RowLayout { id: clientRow - required property int index + required property var modelData spacing: root.spacing anchors.horizontalCenter: parent.horizontalCenter Repeater { - model: IndexModel { - count: root.arrangedToplevels[clientRow.index].length + model: ScriptModel { + values: clientRow.modelData } - delegate: TaskViewWindow { - id: client + delegate: Item { + id: clientGridArea required property int index - Layout.alignment: Qt.AlignTop - maxHeight: root.maxWindowHeight - maxWidth: root.maxWindowWidth - toplevel: root.arrangedToplevels[clientRow.index][index] + required property var modelData + implicitWidth: windowItem.implicitWidth + implicitHeight: windowItem.implicitHeight + + TaskViewWindow { + id: windowItem + z: 9999 + Layout.alignment: Qt.AlignTop + maxHeight: root.maxWindowHeight + maxWidth: root.maxWindowWidth + toplevel: clientGridArea.modelData + } } } } diff --git a/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWindow.qml b/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWindow.qml index e46a124fa..d8bf4b45b 100644 --- a/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWindow.qml +++ b/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWindow.qml @@ -21,6 +21,7 @@ WMouseAreaButton { required property int maxWidth property var hyprlandClient: HyprlandData.clientForToplevel(root.toplevel) + property string address: hyprlandClient?.address property string iconName: AppSearch.guessIcon(hyprlandClient?.class) @@ -35,9 +36,9 @@ WMouseAreaButton { layer.enabled: true layer.effect: OpacityMask { maskSource: Rectangle { - width: root.width - height: root.height - radius: root.radius + width: root.background.width + height: root.background.height + radius: root.background.radius } } scale: (root.pressedButtons & Qt.LeftButton) ? 0.95 : 1 diff --git a/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWorkspace.qml b/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWorkspace.qml index cb3976997..56451a4e7 100644 --- a/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWorkspace.qml +++ b/dots/.config/quickshell/ii/modules/waffle/taskView/TaskViewWorkspace.qml @@ -18,14 +18,14 @@ WMouseAreaButton { property bool newWorkspace: false readonly property bool isActiveWorkspace: HyprlandData.activeWorkspace?.id === root.workspace - readonly property real screenWidth: QsWindow.window.width - readonly property real screenHeight: QsWindow.window.height + readonly property real screenWidth: QsWindow.window?.width ?? 0 + readonly property real screenHeight: QsWindow.window?.height ?? 0 readonly property real screenAspectRatio: screenWidth / screenHeight readonly property real windowScale: wallpaperHeight / screenHeight property real wallpaperHeight: 124 - height: ListView.view.height + height: ListView.view?.height ?? 100 implicitWidth: 244 // for now onClicked: {