disable drop app when already on dock

Change-Id: I77c5dbe6cd6423fded9edf07cbc8fd589df2cea9
This commit is contained in:
石博文 2016-07-20 16:53:39 +08:00 committed by Hualet Wang
parent 22dfdbf37e
commit 466af2c1aa
4 changed files with 12 additions and 4 deletions

View File

@ -27,9 +27,9 @@ const QList<DockItem *> DockItemController::itemList() const
return m_itemList;
}
bool DockItemController::appIsDocked(const QString &appDesktop) const
bool DockItemController::appIsOnDock(const QString &appDesktop) const
{
return m_appInter->IsDocked(appDesktop);
return m_appInter->IsOnDock(appDesktop);
}
void DockItemController::itemMove(DockItem * const moveItem, DockItem * const replaceItem)

View File

@ -20,7 +20,7 @@ public:
~DockItemController();
const QList<DockItem *> itemList() const;
bool appIsDocked(const QString &appDesktop) const;
bool appIsOnDock(const QString &appDesktop) const;
signals:
void itemInserted(const int index, DockItem *item) const;

View File

@ -136,6 +136,14 @@ public Q_SLOTS: // METHODS
return asyncCallWithArgumentList(QStringLiteral("IsDocked"), args);
}
inline QDBusPendingReply<bool> IsOnDock(const QString &appDesktop)
{
QList<QVariant> args;
args << appDesktop;
return asyncCallWithArgumentList(QStringLiteral("IsOnDock"), args);
}
inline QDBusPendingReply<bool> RequestUndock(const QString &appDesktop)
{
QList<QVariant> args;

View File

@ -141,7 +141,7 @@ void MainPanel::dragEnterEvent(QDragEnterEvent *e)
if (!e->mimeData()->formats().contains(RequestDockKey))
return;
if (m_itemController->appIsDocked(e->mimeData()->data(RequestDockKey)))
if (m_itemController->appIsOnDock(e->mimeData()->data(RequestDockKey)))
return;
e->accept();