fix: drag widget follow the mouse all the time

Change-Id: I2bd2cd0cf397979f1780b3d010961dcdc53f9a3a
This commit is contained in:
listenerri 2018-08-08 11:35:08 +08:00
parent 17740b420e
commit 54593f5538
Notes: gerrit 2018-08-08 11:59:06 +08:00
Verified+1: <jenkins@deepin.com>
Verified+1: zhaofangfangdeepin <zhaofangfang@linuxdeepin.com>
Code-Review+2: listenerri <listenerri@gmail.com>
Submitted-by: listenerri <listenerri@gmail.com>
Submitted-at: Wed, 08 Aug 2018 11:59:06 +0800
Reviewed-on: https://cr.deepin.io/37532
Project: dde/dde-dock
Branch: refs/heads/master
2 changed files with 8 additions and 0 deletions

View File

@ -94,6 +94,13 @@ AppDragWidget::AppDragWidget(QWidget *parent) :
AppDragWidget::~AppDragWidget() { }
void AppDragWidget::mouseMoveEvent(QMouseEvent *event)
{
QGraphicsView::mouseMoveEvent(event);
// hide widget when receiving mouseMoveEvent because this means drag-and-drop has been finished
hide();
}
void AppDragWidget::dragEnterEvent(QDragEnterEvent *event)
{
event->accept();

View File

@ -45,6 +45,7 @@ public:
void setDockInfo(Dock::Position dockPosition, const QRect &dockGeometry);
protected:
void mouseMoveEvent(QMouseEvent *event) Q_DECL_OVERRIDE;
void dragEnterEvent(QDragEnterEvent *event) Q_DECL_OVERRIDE;
void dragMoveEvent(QDragMoveEvent *event) Q_DECL_OVERRIDE;
void dropEvent(QDropEvent *event) Q_DECL_OVERRIDE;