fix(tray): 当系统主题发生变化时重新获取托盘插件图标刷新

当系统主题发生变化时重新获取托盘插件图标刷新

Log: 修复系统主题变化时托盘插件图标没有刷新问题
Bug: https://pms.uniontech.com/zentao/bug-view-111309.html
Influence: 系统主题变化时托盘插件图标跟随刷新
Change-Id: I7e32e9af6a92afc464fa67afcd0ea5f405aeaa06
This commit is contained in:
chenjun 2022-01-17 11:26:40 +08:00
parent c57c11539f
commit 3e26f1989c

View File

@ -25,11 +25,15 @@
#include <dbusmenu-qt5/dbusmenuimporter.h>
#include <DGuiApplicationHelper>
#include <QPainter>
#include <QApplication>
#include <xcb/xproto.h>
DGUI_USE_NAMESPACE
#define IconSize 20
const QStringList ItemCategoryList {"ApplicationStatus", "Communications", "SystemServices", "Hardware"};
@ -97,6 +101,7 @@ SNITrayWidget::SNITrayWidget(const QString &sniServicePath, QWidget *parent)
m_updateAttentionIconTimer->setInterval(1000);
m_updateAttentionIconTimer->setSingleShot(true);
connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &SNITrayWidget::refreshIcon);
connect(m_updateIconTimer, &QTimer::timeout, this, &SNITrayWidget::refreshIcon);
connect(m_updateOverlayIconTimer, &QTimer::timeout, this, &SNITrayWidget::refreshOverlayIcon);
connect(m_updateAttentionIconTimer, &QTimer::timeout, this, &SNITrayWidget::refreshAttentionIcon);