mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-02 15:45:21 +00:00
feat: 增加桌面应用图标的AM访问
修复DockItemManager和AppItem类中对AM接口的访问 Log: Influence: 任务栏 Task: https://pms.uniontech.com/task-view-133075.html Change-Id: I93a656f5437a24fb2d964b337b793d4759375dc2
This commit is contained in:
parent
241dd68d30
commit
7091b32239
@ -38,7 +38,7 @@ const QGSettings *DockItemManager::m_dockedSettings = Utils::ModuleSettingsPtr("
|
||||
|
||||
DockItemManager::DockItemManager(QObject *parent)
|
||||
: QObject(parent)
|
||||
, m_appInter(new DBusDock("com.deepin.dde.daemon.Dock", "/com/deepin/dde/daemon/Dock", QDBusConnection::sessionBus(), this))
|
||||
, m_appInter(new DockInter(dockServiceName(), dockServicePath(), QDBusConnection::sessionBus(), this))
|
||||
, m_pluginsInter(new DockPluginsController(this))
|
||||
, m_loadFinished(false)
|
||||
{
|
||||
@ -50,9 +50,9 @@ DockItemManager::DockItemManager(QObject *parent)
|
||||
AppItem *it = new AppItem(m_appSettings, m_activeSettings, m_dockedSettings, entry);
|
||||
manageItem(it);
|
||||
|
||||
connect(it, &AppItem::requestActivateWindow, m_appInter, &DBusDock::ActivateWindow, Qt::QueuedConnection);
|
||||
connect(it, &AppItem::requestPreviewWindow, m_appInter, &DBusDock::PreviewWindow);
|
||||
connect(it, &AppItem::requestCancelPreview, m_appInter, &DBusDock::CancelPreviewWindow);
|
||||
connect(it, &AppItem::requestActivateWindow, m_appInter, &DockInter::ActivateWindow, Qt::QueuedConnection);
|
||||
connect(it, &AppItem::requestPreviewWindow, m_appInter, &DockInter::PreviewWindow);
|
||||
connect(it, &AppItem::requestCancelPreview, m_appInter, &DockInter::CancelPreviewWindow);
|
||||
|
||||
connect(this, &DockItemManager::requestUpdateDockItem, it, &AppItem::requestUpdateEntryGeometries);
|
||||
|
||||
@ -62,9 +62,9 @@ DockItemManager::DockItemManager(QObject *parent)
|
||||
// 托盘区域和插件区域 由DockPluginsController获取
|
||||
|
||||
// 应用信号
|
||||
connect(m_appInter, &DBusDock::EntryAdded, this, &DockItemManager::appItemAdded);
|
||||
connect(m_appInter, &DBusDock::EntryRemoved, this, static_cast<void (DockItemManager::*)(const QString &)>(&DockItemManager::appItemRemoved), Qt::QueuedConnection);
|
||||
connect(m_appInter, &DBusDock::ServiceRestarted, this, &DockItemManager::reloadAppItems);
|
||||
connect(m_appInter, &DockInter::EntryAdded, this, &DockItemManager::appItemAdded);
|
||||
connect(m_appInter, &DockInter::EntryRemoved, this, static_cast<void (DockItemManager::*)(const QString &)>(&DockItemManager::appItemRemoved), Qt::QueuedConnection);
|
||||
connect(m_appInter, &DockInter::ServiceRestarted, this, &DockItemManager::reloadAppItems);
|
||||
|
||||
// 插件信号
|
||||
connect(m_pluginsInter, &DockPluginsController::pluginItemInserted, this, &DockItemManager::pluginItemInserted, Qt::QueuedConnection);
|
||||
@ -203,9 +203,9 @@ void DockItemManager::appItemAdded(const QDBusObjectPath &path, const int index)
|
||||
|
||||
manageItem(item);
|
||||
|
||||
connect(item, &AppItem::requestActivateWindow, m_appInter, &DBusDock::ActivateWindow, Qt::QueuedConnection);
|
||||
connect(item, &AppItem::requestPreviewWindow, m_appInter, &DBusDock::PreviewWindow);
|
||||
connect(item, &AppItem::requestCancelPreview, m_appInter, &DBusDock::CancelPreviewWindow);
|
||||
connect(item, &AppItem::requestActivateWindow, m_appInter, &DockInter::ActivateWindow, Qt::QueuedConnection);
|
||||
connect(item, &AppItem::requestPreviewWindow, m_appInter, &DockInter::PreviewWindow);
|
||||
connect(item, &AppItem::requestCancelPreview, m_appInter, &DockInter::CancelPreviewWindow);
|
||||
connect(this, &DockItemManager::requestUpdateDockItem, item, &AppItem::requestUpdateEntryGeometries);
|
||||
|
||||
m_itemList.insert(insertIndex, item);
|
||||
|
@ -27,12 +27,10 @@
|
||||
#include "dockitem.h"
|
||||
#include "appitem.h"
|
||||
#include "placeholderitem.h"
|
||||
|
||||
#include <com_deepin_dde_daemon_dock.h>
|
||||
#include "dbusutil.h"
|
||||
|
||||
#include <QObject>
|
||||
|
||||
using DBusDock = com::deepin::dde::daemon::Dock;
|
||||
/**
|
||||
* @brief The DockItemManager class
|
||||
* 管理类,管理所有的应用数据,插件数据
|
||||
@ -78,7 +76,7 @@ private:
|
||||
void manageItem(DockItem *item);
|
||||
|
||||
private:
|
||||
DBusDock *m_appInter;
|
||||
DockInter *m_appInter;
|
||||
DockPluginsController *m_pluginsInter;
|
||||
|
||||
static DockItemManager *INSTANCE;
|
||||
|
@ -55,7 +55,7 @@ AppItem::AppItem(const QGSettings *appSettings, const QGSettings *activeAppSetti
|
||||
, m_activeAppSettings(activeAppSettings)
|
||||
, m_dockedAppSettings(dockedAppSettings)
|
||||
, m_appPreviewTips(nullptr)
|
||||
, m_itemEntryInter(new DockEntryInter("com.deepin.dde.daemon.Dock", entry.path(), QDBusConnection::sessionBus(), this))
|
||||
, m_itemEntryInter(new DockEntryInter(dockServiceName(), entry.path(), QDBusConnection::sessionBus(), this))
|
||||
, m_swingEffectView(nullptr)
|
||||
, m_itemAnimation(nullptr)
|
||||
, m_wmHelper(DWindowManagerHelper::instance())
|
||||
|
@ -28,15 +28,13 @@
|
||||
#include "appdrag.h"
|
||||
#include "dbusclientmanager.h"
|
||||
#include "../widgets/tipswidget.h"
|
||||
#include "dbusutil.h"
|
||||
|
||||
#include <QGraphicsView>
|
||||
#include <QGraphicsItem>
|
||||
#include <QGraphicsItemAnimation>
|
||||
#include <DGuiApplicationHelper>
|
||||
|
||||
#include <com_deepin_dde_daemon_dock_entry.h>
|
||||
|
||||
using DockEntryInter = com::deepin::dde::daemon::dock::Entry;
|
||||
class QGSettings;
|
||||
|
||||
class AppItem : public DockItem
|
||||
|
Loading…
x
Reference in New Issue
Block a user