From 0a3298344357bd127e73a76708c89f7102e0d282 Mon Sep 17 00:00:00 2001 From: donghualin Date: Thu, 2 Feb 2023 09:52:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=88=87=E6=8D=A2?= =?UTF-8?q?=E4=B8=BB=E9=A2=98=E5=BF=AB=E6=8D=B7=E9=9D=A2=E6=9D=BF=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E4=B8=BB=E9=A2=98=E9=A2=9C=E8=89=B2=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E5=8F=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 响应主题变化的信号,在切换主题后实时获取快捷面板的图标 Log: 修复快捷面板插件图标在切换主题后颜色没有变化的问题 Influence: 打开快捷面板,切换主题,观察图标颜色显示是否正常 Bug: https://pms.uniontech.com/bug-view-184085.html Change-Id: Iacffcacf63413ba8d85ae3edf28bf1ff58242036 --- plugins/pluginmanager/quicksettingcontainer.cpp | 7 +++++++ plugins/pluginmanager/quicksettingcontainer.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/plugins/pluginmanager/quicksettingcontainer.cpp b/plugins/pluginmanager/quicksettingcontainer.cpp index 8838ae01e..0f562ba02 100644 --- a/plugins/pluginmanager/quicksettingcontainer.cpp +++ b/plugins/pluginmanager/quicksettingcontainer.cpp @@ -362,6 +362,7 @@ void QuickSettingContainer::initConnection() }); connect(m_pluginController, &DockPluginController::pluginRemoved, this, &QuickSettingContainer::onPluginRemove); connect(m_pluginController, &DockPluginController::pluginUpdated, this, &QuickSettingContainer::onPluginUpdated); + connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &QuickSettingContainer::onThemeTypeChanged); connect(m_childPage, &PluginChildPage::back, this, [ this ] { showPage(m_mainWidget); @@ -413,3 +414,9 @@ void QuickSettingContainer::onPluginUpdated(PluginsItemInterface *itemInter, con break; } } + +void QuickSettingContainer::onThemeTypeChanged(DGuiApplicationHelper::ColorType themeType) +{ + for (QuickSettingItem *settingItem : m_quickSettings) + settingItem->doUpdate(); +} diff --git a/plugins/pluginmanager/quicksettingcontainer.h b/plugins/pluginmanager/quicksettingcontainer.h index cf7ed03cc..691a0084d 100644 --- a/plugins/pluginmanager/quicksettingcontainer.h +++ b/plugins/pluginmanager/quicksettingcontainer.h @@ -26,6 +26,7 @@ #include "dtkwidget_global.h" #include +#include #include @@ -64,6 +65,7 @@ private Q_SLOTS: void onShowChildWidget(QWidget *childWidget); void onResizeView(); void onPluginUpdated(PluginsItemInterface *itemInter, const DockPart dockPart); + void onThemeTypeChanged(DGuiApplicationHelper::ColorType themeType); private: // 加载UI