Skip to content

Commit 722758c

Browse files
committed
fix: improve onboard plugin icon handling
1. Replaced custom OnboardItem with CommonIconButton for consistent icon behavior 2. Simplified icon loading logic by removing redundant fallback checks 3. Added proper QIcon and QLogging includes 4. Removed obsolete OnboardItem class files 5. Improved icon fallback mechanism in CommonIconButton fix: 改进屏幕键盘插件图标处理 1. 使用 CommonIconButton 替代自定义的 OnboardItem 以获得一致的图标行为 2. 通过移除冗余的回退检查简化了图标加载逻辑 3. 添加了适当的 QIcon 和 QLogging 头文件包含 4. 移除了过时的 OnboardItem 类文件 5 改进了 CommonIconButton 中的图标回退机制
1 parent edae54f commit 722758c

8 files changed

Lines changed: 19 additions & 194 deletions

File tree

plugins/dde-dock/common/commoniconbutton.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,12 @@ void CommonIconButton::setIcon(const QString &icon, const QString &fallback, con
133133
addDarkMark(tmp);
134134
addDarkMark(tmpFallback);
135135
}
136-
m_icon = QIcon::fromTheme(tmp, QIcon::fromTheme(tmpFallback));
136+
m_icon = QIcon::fromTheme(tmp);
137+
138+
if (m_icon.isNull()) {
139+
m_icon = QIcon::fromTheme(tmpFallback);
140+
}
141+
137142
if (m_icon.isNull()) {
138143
QString defaultIcon = m_fileMapping[State::Default].first;
139144
m_icon = QIcon::fromTheme(defaultIcon);
-761 Bytes
Binary file not shown.
Lines changed: 3 additions & 5 deletions
Loading
Lines changed: 3 additions & 5 deletions
Loading

plugins/dde-dock/onboard/onboarditem.cpp

Lines changed: 0 additions & 139 deletions
This file was deleted.

plugins/dde-dock/onboard/onboarditem.h

Lines changed: 0 additions & 38 deletions
This file was deleted.

plugins/dde-dock/onboard/onboardplugin.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ OnboardPlugin::OnboardPlugin(QObject *parent)
1515
: QObject(parent)
1616
, m_pluginLoaded(false)
1717
, m_startupState(false)
18-
, m_onboardItem(nullptr)
18+
, m_onboardIcon(nullptr)
1919
, m_tipsLabel(new TipsWidget)
2020
, m_quickPanel(new QuickPanel)
2121
{
@@ -47,7 +47,7 @@ QWidget *OnboardPlugin::itemWidget(const QString &itemKey)
4747
return m_quickPanel.data();
4848
}
4949

50-
return m_onboardItem.data();
50+
return m_onboardIcon.data();
5151
}
5252

5353
QWidget *OnboardPlugin::itemTipsWidget(const QString &itemKey)
@@ -151,7 +151,7 @@ void OnboardPlugin::displayModeChanged(const Dock::DisplayMode displayMode)
151151
Q_UNUSED(displayMode);
152152

153153
if (!pluginIsDisable()) {
154-
m_onboardItem->update();
154+
m_onboardIcon->update();
155155
}
156156
}
157157

@@ -180,7 +180,9 @@ void OnboardPlugin::loadPlugin()
180180

181181
m_pluginLoaded = true;
182182

183-
m_onboardItem.reset(new OnboardItem);
183+
m_onboardIcon.reset(new CommonIconButton);
184+
m_onboardIcon->setFixedSize(Dock::DOCK_PLUGIN_ITEM_FIXED_SIZE);
185+
m_onboardIcon->setIcon(":/icons/icon/keyboard-symbolic.svg");
184186

185187
m_proxyInter->itemAdded(this, pluginName());
186188
displayModeChanged(displayMode());

plugins/dde-dock/onboard/onboardplugin.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
#define ONBOARDPLUGIN_H
77

88
#include "pluginsiteminterface_v2.h"
9-
#include "onboarditem.h"
109
#include "quickpanel.h"
1110
#include "tipswidget.h"
1211

@@ -52,7 +51,7 @@ class OnboardPlugin : public QObject, public PluginsItemInterfaceV2
5251
bool m_pluginLoaded;
5352
bool m_startupState;
5453

55-
QScopedPointer<OnboardItem> m_onboardItem;
54+
QScopedPointer<CommonIconButton> m_onboardIcon;
5655
QScopedPointer<Dock::TipsWidget> m_tipsLabel;
5756
QScopedPointer<QuickPanel> m_quickPanel;
5857
};

0 commit comments

Comments
 (0)