From b087e00ff93ce240201dccc0c09fd612acbaf047 Mon Sep 17 00:00:00 2001 From: songwentao Date: Fri, 17 Dec 2021 14:49:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=85=B3=E9=97=AD=E9=A3=9E=E8=A1=8C?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E5=9C=BA=E6=99=AF=E4=B8=8B=E4=B8=8D=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 用户隐藏插件时,不加入到界面布局中 Log: Influence: 任务栏-插件区域-飞行模式插件-关闭飞行模式时,任务栏不显示该图标 Bug: https://pms.uniontech.com/zentao/bug-view-108515.html Change-Id: Id02fa1399a9eb3100225040e969e3edd2fc5e9cc --- frame/controller/dockitemmanager.cpp | 4 +++- plugins/airplane-mode/airplanemodeitem.cpp | 3 +-- plugins/tray/system-trays/systemtrayscontroller.cpp | 7 ++++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/frame/controller/dockitemmanager.cpp b/frame/controller/dockitemmanager.cpp index ad12b601c..542fac9d9 100644 --- a/frame/controller/dockitemmanager.cpp +++ b/frame/controller/dockitemmanager.cpp @@ -305,7 +305,9 @@ void DockItemManager::pluginItemInserted(PluginsItem *item) insertIndex ++; } - emit itemInserted(insertIndex - firstPluginPosition, item); + // 隐藏的插件不加入到布局中 + if (Utils::SettingValue(QString("com.deepin.dde.dock.module.") + item->pluginName(), QByteArray(), "enable", true).toBool()) + emit itemInserted(insertIndex - firstPluginPosition, item); } void DockItemManager::pluginItemRemoved(PluginsItem *item) diff --git a/plugins/airplane-mode/airplanemodeitem.cpp b/plugins/airplane-mode/airplanemodeitem.cpp index 56a75464d..cbf9bbc44 100644 --- a/plugins/airplane-mode/airplanemodeitem.cpp +++ b/plugins/airplane-mode/airplanemodeitem.cpp @@ -57,8 +57,6 @@ AirplaneModeItem::AirplaneModeItem(QWidget *parent) connect(m_airplaneModeInter, &DBusAirplaneMode::EnabledChanged, this, [this](bool enable) { m_applet->setEnabled(enable); refreshIcon(); - - Utils::SettingSaveValue("com.deepin.dde.dock.module.airplane-mode", QByteArray(), "enable", enable); }); m_applet->setEnabled(m_airplaneModeInter->enabled()); @@ -105,6 +103,7 @@ const QString AirplaneModeItem::contextMenu() const void AirplaneModeItem::invokeMenuItem(const QString menuId, const bool checked) { + Q_UNUSED(menuId); Q_UNUSED(checked); /* 控制中心暂未实现 diff --git a/plugins/tray/system-trays/systemtrayscontroller.cpp b/plugins/tray/system-trays/systemtrayscontroller.cpp index 45c2742e2..4f33c682c 100644 --- a/plugins/tray/system-trays/systemtrayscontroller.cpp +++ b/plugins/tray/system-trays/systemtrayscontroller.cpp @@ -21,6 +21,7 @@ #include "systemtrayscontroller.h" #include "pluginsiteminterface.h" +#include "utils.h" #include #include @@ -50,11 +51,11 @@ void SystemTraysController::itemAdded(PluginsItemInterface * const itemInter, co } }, Qt::QueuedConnection); - item->setVisible(false); - mPluginsMap[itemInter][itemKey] = item; - emit pluginItemAdded(itemKey, item); + // 隐藏的插件不加入到布局中 + if (Utils::SettingValue(QString("com.deepin.dde.dock.module.") + itemInter->pluginName(), QByteArray(), "enable", true).toBool()) + emit pluginItemAdded(itemKey, item); } void SystemTraysController::itemUpdate(PluginsItemInterface * const itemInter, const QString &itemKey)