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