From e9f790d3533ebaee1f782e91b6e13b2c6375c86a Mon Sep 17 00:00:00 2001 From: SineStriker <55847490+SineStriker@users.noreply.github.com> Date: 周二, 11 2月 2025 23:06:01 +0800 Subject: [PATCH] AWC: fix window attribute handler --- examples/qml/main.qml | 61 ++++++++++++++++++++++++------ 1 files changed, 48 insertions(+), 13 deletions(-) diff --git a/examples/qml/main.qml b/examples/qml/main.qml index 8c59b9e..dd4f284 100644 --- a/examples/qml/main.qml +++ b/examples/qml/main.qml @@ -12,6 +12,7 @@ title: qsTr("Hello, world!") Component.onCompleted: { windowAgent.setup(window) + windowAgent.setWindowAttribute("dark-mode", true) window.visible = true } @@ -35,22 +36,21 @@ id: windowAgent } - MouseArea { - anchors.fill: parent + TapHandler { acceptedButtons: Qt.RightButton - onClicked: contextMenu.open() + onTapped: contextMenu.open() } Rectangle { id: titleBar anchors { top: parent.top - topMargin: 1 left: parent.left right: parent.right } height: 32 - color: window.active ? "#3C3C3C" : "#505050" + //color: window.active ? "#3C3C3C" : "#505050" + color: "transparent" Component.onCompleted: windowAgent.setTitleBar(titleBar) Image { @@ -64,6 +64,8 @@ height: 18 mipmap: true source: "qrc:///app/example.png" + fillMode: Image.PreserveAspectFit + Component.onCompleted: windowAgent.setSystemButton(WindowAgent.WindowIcon, iconButton) } Text { @@ -140,6 +142,12 @@ bold: true } color: "#FEFEFE" + Component.onCompleted: { + if ($curveRenderingAvailable) { + console.log("Curve rendering for text is available.") + timeLabel.renderType = Text.CurveRendering + } + } } Menu { @@ -163,6 +171,7 @@ MenuItem { text: qsTr("Dark") checkable: true + checked: true onTriggered: windowAgent.setWindowAttribute("dark-mode", true) } } @@ -178,11 +187,28 @@ MenuItem { enabled: Qt.platform.os === "windows" + text: qsTr("None") + checkable: true + checked: true + onTriggered: { + window.color = darkStyle.windowBackgroundColor + windowAgent.setWindowAttribute("dwm-blur", false) + windowAgent.setWindowAttribute("acrylic-material", false) + windowAgent.setWindowAttribute("mica", false) + windowAgent.setWindowAttribute("mica-alt", false) + } + } + + MenuItem { + enabled: Qt.platform.os === "windows" text: qsTr("DWM blur") checkable: true onTriggered: { - window.color = checked ? "transparent" : darkStyle.windowBackgroundColor - windowAgent.setWindowAttribute("dwm-blur", checked) + window.color = "transparent" + windowAgent.setWindowAttribute("acrylic-material", false) + windowAgent.setWindowAttribute("mica", false) + windowAgent.setWindowAttribute("mica-alt", false) + windowAgent.setWindowAttribute("dwm-blur", true) } } @@ -191,8 +217,11 @@ text: qsTr("Acrylic material") checkable: true onTriggered: { - window.color = checked ? "transparent" : darkStyle.windowBackgroundColor - windowAgent.setWindowAttribute("acrylic-material", checked) + window.color = "transparent" + windowAgent.setWindowAttribute("dwm-blur", false) + windowAgent.setWindowAttribute("mica", false) + windowAgent.setWindowAttribute("mica-alt", false) + windowAgent.setWindowAttribute("acrylic-material", true) } } @@ -201,8 +230,11 @@ text: qsTr("Mica") checkable: true onTriggered: { - window.color = checked ? "transparent" : darkStyle.windowBackgroundColor - windowAgent.setWindowAttribute("mica", checked) + window.color = "transparent" + windowAgent.setWindowAttribute("dwm-blur", false) + windowAgent.setWindowAttribute("acrylic-material", false) + windowAgent.setWindowAttribute("mica-alt", false) + windowAgent.setWindowAttribute("mica", true) } } @@ -211,8 +243,11 @@ text: qsTr("Mica Alt") checkable: true onTriggered: { - window.color = checked ? "transparent" : darkStyle.windowBackgroundColor - windowAgent.setWindowAttribute("mica-alt", checked) + window.color = "transparent" + windowAgent.setWindowAttribute("dwm-blur", false) + windowAgent.setWindowAttribute("acrylic-material", false) + windowAgent.setWindowAttribute("mica", false) + windowAgent.setWindowAttribute("mica-alt", true) } } } -- Gitblit v1.9.1