From 7f6364008300f2db33dbdf5d18688371a49eb961 Mon Sep 17 00:00:00 2001 From: Wang Cong Date: Tue, 19 Mar 2024 14:11:23 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E9=80=82=E9=85=8D=E5=90=AB=E6=9C=89?= =?UTF-8?q?=E5=86=85=E5=A4=96=E8=BE=B9=E7=95=8C=E7=9A=84blurEffectWidget?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 由于在blurEffectWidget的paintEvent中绘制内边界,边界会属于窗口内,当内边界带透明度时,会透过窗口下的颜色,必须在 blurEffectWidget的painterEvent之后再绘制边界 此需求需要应用适配,将DBlurEffectWidget替换为DBlurEffectWithBorderWidget即可 Log: 适配含有内外边界的blurEffectWidget --- deepin-system-monitor-plugin-popup/gui/mainwindow.cpp | 4 ++++ deepin-system-monitor-plugin-popup/gui/mainwindow.h | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp b/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp index 4663c50f..474ada80 100644 --- a/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp +++ b/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp @@ -42,7 +42,11 @@ const QString KILL_DBUS_COMMAND = "killall deepin-system-monitor-plugin-popup"; MainWindow::MainWindow(QWidget *parent) +#ifdef DTKWIDGET_CLASS_DBlurEffectWithBorderWidget + : DBlurEffectWithBorderWidget(parent) +#else : DBlurEffectWidget(parent) +#endif , m_displayInter(new QDBusInterface(common::systemInfo().DISPLAY_SERVICE, common::systemInfo().DISPLAY_PATH, common::systemInfo().DISPLAY_INTERFACE, diff --git a/deepin-system-monitor-plugin-popup/gui/mainwindow.h b/deepin-system-monitor-plugin-popup/gui/mainwindow.h index a94fb73f..1f7c9bee 100644 --- a/deepin-system-monitor-plugin-popup/gui/mainwindow.h +++ b/deepin-system-monitor-plugin-popup/gui/mainwindow.h @@ -20,7 +20,11 @@ // Qt #include +#ifdef DTKWIDGET_CLASS_DBlurEffectWithBorderWidget +#include +#else #include +#endif #include #include #include @@ -37,7 +41,11 @@ QT_FORWARD_DECLARE_CLASS(QSequentialAnimationGroup) * \~chinese \class MainWindow * \~chinese \brief 主窗口类 */ +#ifdef DTKWIDGET_CLASS_DBlurEffectWithBorderWidget +class MainWindow : public DBlurEffectWithBorderWidget +#else class MainWindow : public DBlurEffectWidget +#endif { Q_OBJECT Q_PROPERTY(int width READ getWidth WRITE setFixedWidth)