mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 09:23:03 +00:00
feat(power plugin):dock mini size change dark icon
This commit is contained in:
parent
398b0484f2
commit
15e28e0d0e
@ -21,11 +21,14 @@
|
||||
|
||||
#include "powerstatuswidget.h"
|
||||
#include "powerplugin.h"
|
||||
#include <DGuiApplicationHelper>
|
||||
|
||||
#include <QPainter>
|
||||
#include <QIcon>
|
||||
#include <QMouseEvent>
|
||||
|
||||
DGUI_USE_NAMESPACE
|
||||
|
||||
PowerStatusWidget::PowerStatusWidget(QWidget *parent)
|
||||
: QWidget(parent),
|
||||
|
||||
@ -36,6 +39,9 @@ PowerStatusWidget::PowerStatusWidget(QWidget *parent)
|
||||
connect(m_powerInter, &DBusPower::BatteryPercentageChanged, this, static_cast<void (PowerStatusWidget::*)()>(&PowerStatusWidget::update));
|
||||
connect(m_powerInter, &DBusPower::BatteryStateChanged, this, static_cast<void (PowerStatusWidget::*)()>(&PowerStatusWidget::update));
|
||||
connect(m_powerInter, &DBusPower::OnBatteryChanged, this, static_cast<void (PowerStatusWidget::*)()>(&PowerStatusWidget::update));
|
||||
connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, [ = ] {
|
||||
refreshIcon();
|
||||
});
|
||||
}
|
||||
|
||||
void PowerStatusWidget::refreshIcon()
|
||||
@ -86,9 +92,13 @@ QPixmap PowerStatusWidget::getBatteryIcon()
|
||||
percentageStr = "000";
|
||||
}
|
||||
|
||||
const QString iconStr = QString("battery-%1-%2")
|
||||
QString iconStr = QString("battery-%1-%2")
|
||||
.arg(percentageStr)
|
||||
.arg(plugged ? "plugged-symbolic" : "symbolic");
|
||||
|
||||
if (height() <= PLUGIN_BACKGROUND_MIN_SIZE && DGuiApplicationHelper::instance()->themeType() == DGuiApplicationHelper::LightType)
|
||||
iconStr.append(PLUGIN_MIN_ICON_NAME);
|
||||
|
||||
const auto ratio = devicePixelRatioF();
|
||||
QPixmap pix = QIcon::fromTheme(iconStr).pixmap(QSize(20, 20) * ratio);
|
||||
pix.setDevicePixelRatio(ratio);
|
||||
|
Loading…
x
Reference in New Issue
Block a user