fix preview stat not quit

Change-Id: I0e79d8277edee5ae6ebf0bc70196560d077e74a2
This commit is contained in:
石博文 2017-11-20 14:46:56 +08:00
parent e95817c312
commit aff00a7f79
Notes: Deepin Code Review 2017-11-20 17:32:57 +08:00
Verified+1: Anonymous Coward #1000004
Code-Review+2: 石博文 <sbw@sbw.so>
Submitted-by: 石博文 <sbw@sbw.so>
Submitted-at: Mon, 20 Nov 2017 17:32:56 +0800
Reviewed-on: https://cr.deepin.io/28671
Project: dde/dde-dock
Branch: refs/heads/master
5 changed files with 15 additions and 16 deletions

View File

@ -110,8 +110,7 @@ AppItem::AppItem(const QDBusObjectPath &entry, QWidget *parent)
connect(m_appPreviewTips, &PreviewContainer::requestActivateWindow, this, &AppItem::requestActivateWindow, Qt::QueuedConnection);
connect(m_appPreviewTips, &PreviewContainer::requestPreviewWindow, this, &AppItem::requestPreviewWindow, Qt::QueuedConnection);
connect(m_appPreviewTips, &PreviewContainer::requestCancelPreview, this, &AppItem::requestCancelPreview, Qt::QueuedConnection);
connect(m_appPreviewTips, &PreviewContainer::requestHidePreview, this, &AppItem::hidePopup, Qt::QueuedConnection);
connect(m_appPreviewTips, &PreviewContainer::requestCancelAndHidePreview, this, &AppItem::cancelAndHidePreview);
connect(m_appPreviewTips, &PreviewContainer::requestCheckWindows, m_itemEntry, &DBusDockEntry::Check);
updateTitle();
@ -562,3 +561,9 @@ void AppItem::showPreview()
showPopupWindow(m_appPreviewTips, true);
}
void AppItem::cancelAndHidePreview()
{
hidePopup();
emit requestCancelPreview();
}

View File

@ -77,6 +77,7 @@ private slots:
void refershIcon();
void activeChanged();
void showPreview();
void cancelAndHidePreview();
private:
QLabel *m_appNameTips;

View File

@ -78,12 +78,8 @@ void PreviewContainer::setWindowInfos(const WindowDict &infos)
}
if (m_snapshots.isEmpty())
{
emit requestCancelPreview();
emit requestHidePreview();
} else {
emit requestCancelAndHidePreview();
adjustSize();
}
}
void PreviewContainer::updateSnapshots()
@ -108,14 +104,13 @@ void PreviewContainer::checkMouseLeave()
if (!hover)
{
emit requestCancelAndHidePreview();
m_floatingPreview->setVisible(false);
if (!isVisible())
return;
emit requestCancelPreview();
emit requestHidePreview();
if (m_needActivate)
{
m_needActivate = false;
@ -165,8 +160,7 @@ void PreviewContainer::appendSnapWidget(const WId wid)
AppSnapshot *snap = new AppSnapshot(wid);
connect(snap, &AppSnapshot::clicked, this, &PreviewContainer::requestActivateWindow, Qt::QueuedConnection);
connect(snap, &AppSnapshot::clicked, this, &PreviewContainer::requestCancelPreview, Qt::QueuedConnection);
connect(snap, &AppSnapshot::clicked, this, &PreviewContainer::requestHidePreview, Qt::QueuedConnection);
connect(snap, &AppSnapshot::clicked, this, &PreviewContainer::requestCancelAndHidePreview, Qt::QueuedConnection);
connect(snap, &AppSnapshot::entered, this, &PreviewContainer::previewEntered, Qt::QueuedConnection);
connect(snap, &AppSnapshot::requestCheckWindow, this, &PreviewContainer::requestCheckWindows);

View File

@ -48,9 +48,8 @@ public:
signals:
void requestActivateWindow(const WId wid) const;
void requestPreviewWindow(const WId wid) const;
void requestCancelPreview() const;
void requestHidePreview() const;
void requestCheckWindows() const;
void requestCancelAndHidePreview() const;
public:
void setWindowInfos(const WindowDict &infos);

View File

@ -65,8 +65,8 @@ public:
Position position() const;
int screenHeight() const;
int screenWidth() const;
const int screenRawHeight() const { return m_displayInter->screenRawHeight(); }
const int screenRawWidth() const { return m_displayInter->screenRawWidth(); }
int screenRawHeight() const { return m_displayInter->screenRawHeight(); }
int screenRawWidth() const { return m_displayInter->screenRawWidth(); }
int expandTimeout() const;
int narrowTimeout() const;