From f98fab6c6fbe1d296b0e72f71fb4e870e4f46d6e Mon Sep 17 00:00:00 2001 From: Wang Zichong Date: Tue, 18 Nov 2025 14:12:47 +0800 Subject: [PATCH] fix: shadow too hard caused by incorrect Qt.rgba usage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 由于对 Qt.rgba() 的误用导致阴影过硬,任务栏在下方时由于阴影方向是右下 所以不明显,在左/上/右时很显著. 此处对误用进行修正,使用默认阴影透明度(60%). PMS: BUG-331251, BUG-339199 Log: --- panels/dock/package/main.qml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/panels/dock/package/main.qml b/panels/dock/package/main.qml index 99d9c9766..cdcb86809 100644 --- a/panels/dock/package/main.qml +++ b/panels/dock/package/main.qml @@ -65,8 +65,9 @@ Window { //TODO:由于windoweffect处理有BUG,导致动画结束后一致保持无阴影,无borderwidth状态。 无法恢复到最初的阴影和边框 //D.DWindow.windowEffect: hideShowAnimation.running ? D.PlatformHandle.EffectNoShadow | D.PlatformHandle.EffectNoBorder : 0 - //目前直接处理shadowColor(透明和默认值的切换)和borderWidth(0和1的切换),来控制阴影和边框 - D.DWindow.shadowColor: hideShowAnimation.running ? Qt.rgba(0,0,0,0) : Qt.rgba(0,0,0,255 * 0.6) + // 目前直接处理shadowColor(透明和默认值的切换)和borderWidth(0和1的切换),来控制阴影和边框 + // 默认阴影透明度是 60%,见: https://github.com/linuxdeepin/qt5platform-plugins/blob/master/xcb/dframewindow.h#L122 + D.DWindow.shadowColor: hideShowAnimation.running ? Qt.rgba(0, 0, 0, 0) : Qt.rgba(0, 0, 0, 0.6) D.DWindow.borderWidth: hideShowAnimation.running ? 0 : 1 D.DWindow.enableBlurWindow: Qt.platform.pluginName !== "xcb" D.DWindow.themeType: Panel.colorTheme