From 43caad8676652afeb59f2a6b8cf6cf59e286b48f Mon Sep 17 00:00:00 2001 From: Martchus Date: Thu, 22 Feb 2024 01:10:04 +0100 Subject: [PATCH] Ensure Fork Awesome icons are re-rendered on device pixel ratio change --- syncthingmodel/syncthingicons.h | 7 +++++++ tray/gui/traywidget.cpp | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/syncthingmodel/syncthingicons.h b/syncthingmodel/syncthingicons.h index 85b7c6d..1824d04 100644 --- a/syncthingmodel/syncthingicons.h +++ b/syncthingmodel/syncthingicons.h @@ -161,6 +161,7 @@ public: public Q_SLOTS: void setPalette(const QPalette &palette); + void update(); Q_SIGNALS: void statusIconsChanged(const Data::StatusIcons &newStatusIcons, const Data::StatusIcons &newTrayIcons); @@ -210,6 +211,12 @@ inline const ForkAwesomeIcons &IconManager::commonForkAwesomeIcons() const return m_commonForkAwesomeIcons; } +inline void IconManager::update() +{ + emit statusIconsChanged(m_statusIcons, m_trayIcons); + emit forkAwesomeIconsChanged(m_commonForkAwesomeIcons); +} + inline const StatusIcons &statusIcons() { return IconManager::instance().statusIcons(); diff --git a/tray/gui/traywidget.cpp b/tray/gui/traywidget.cpp index 66bf121..5c3b527 100644 --- a/tray/gui/traywidget.cpp +++ b/tray/gui/traywidget.cpp @@ -639,6 +639,11 @@ bool TrayWidget::event(QEvent *event) m_menu->icon()->updateStatusIconAndText(); } break; + case QEvent::DevicePixelRatioChange: + setLabelPixmaps(); + setTrafficPixmaps(true); + IconManager::instance().update(); + break; default:; } return res;