diff --git a/frame/item/components/previewcontainer.cpp b/frame/item/components/previewcontainer.cpp index 1890fedbb..4d71f70b2 100644 --- a/frame/item/components/previewcontainer.cpp +++ b/frame/item/components/previewcontainer.cpp @@ -58,13 +58,8 @@ void PreviewContainer::leaveEvent(QEvent *e) { QWidget::leaveEvent(e); - QTimer::singleShot(1, this, &PreviewContainer::onMouseLeave); -} + const QPoint p = mapFromGlobal(QCursor::pos()) + pos(); -void PreviewContainer::onMouseLeave() -{ - if (rect().contains(mapFromGlobal(QCursor::pos()))) - return; - - emit requestCancelPreview(); + if (!rect().contains(p)) + emit requestCancelPreview(); } diff --git a/frame/item/components/previewcontainer.h b/frame/item/components/previewcontainer.h index fbe7c92ca..9b49b4115 100644 --- a/frame/item/components/previewcontainer.h +++ b/frame/item/components/previewcontainer.h @@ -28,9 +28,6 @@ public slots: protected: void leaveEvent(QEvent *e); -private slots: - void onMouseLeave(); - private: QBoxLayout *m_windowListLayout; };