From f459e944e02b92b5e1e12b4b5adf08142b473b4e Mon Sep 17 00:00:00 2001 From: SiamSami <33563064+SiamSami@users.noreply.github.com> Date: Thu, 2 Jul 2020 06:45:02 +0600 Subject: [PATCH] Update previewcontainer.cpp --- frame/item/components/previewcontainer.cpp | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/frame/item/components/previewcontainer.cpp b/frame/item/components/previewcontainer.cpp index 4d443391d..a2d5ed807 100644 --- a/frame/item/components/previewcontainer.cpp +++ b/frame/item/components/previewcontainer.cpp @@ -221,13 +221,11 @@ void PreviewContainer::dragLeaveEvent(QDragLeaveEvent *e) void PreviewContainer::onSnapshotClicked(const WId wid) { - if (!m_wmHelper->hasComposite()) { - emit requestActivateWindow(wid); - } - + Q_EMIT requestActivateWindow(wid); m_needActivate = true; - // the leaveEvent of this widget will be called after this signal - Q_EMIT requestHidePopup(); + m_waitForShowPreviewTimer->stop(); + requestCancelPreviewWindow(); + requestHidePopup(); } void PreviewContainer::previewEntered(const WId wid) @@ -250,6 +248,8 @@ void PreviewContainer::previewEntered(const WId wid) m_floatingPreview->trackWindow(snap); + requestCancelPreviewWindow(); + if (m_waitForShowPreviewTimer->isActive()) { return; } @@ -259,8 +259,11 @@ void PreviewContainer::previewEntered(const WId wid) void PreviewContainer::previewFloating() { - m_floatingPreview->setVisible(true); - m_floatingPreview->raise(); + if(!m_waitForShowPreviewTimer->isActive()){ + m_floatingPreview->setVisible(true); + m_floatingPreview->raise(); - emit requestPreviewWindow(m_currentWId); + requestPreviewWindow(m_currentWId); + } + return; }