diff options
author | Justin Dailey <unknown> | 2017-07-04 09:54:16 +1000 |
---|---|---|
committer | Justin Dailey <unknown> | 2017-07-04 09:54:16 +1000 |
commit | 8918bc9ca9d996d87f30a38fadfe3ae1dd180a5d (patch) | |
tree | 249481119f27d48e9908c00723274699b20322d1 /qt/ScintillaEditBase/ScintillaEditBase.cpp | |
parent | 3352a72bcb283ed42d40b7903e058d7170a3db28 (diff) | |
download | scintilla-mirror-8918bc9ca9d996d87f30a38fadfe3ae1dd180a5d.tar.gz |
Dropping files fires the SCN_URIDROPPED notification instead of inserting text.
Diffstat (limited to 'qt/ScintillaEditBase/ScintillaEditBase.cpp')
-rw-r--r-- | qt/ScintillaEditBase/ScintillaEditBase.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/qt/ScintillaEditBase/ScintillaEditBase.cpp b/qt/ScintillaEditBase/ScintillaEditBase.cpp index dabdce105..bfd9ddd14 100644 --- a/qt/ScintillaEditBase/ScintillaEditBase.cpp +++ b/qt/ScintillaEditBase/ScintillaEditBase.cpp @@ -376,7 +376,9 @@ void ScintillaEditBase::contextMenuEvent(QContextMenuEvent *event) void ScintillaEditBase::dragEnterEvent(QDragEnterEvent *event) { - if (event->mimeData()->hasText()) { + if (event->mimeData()->hasUrls()) { + event->acceptProposedAction(); + } else if (event->mimeData()->hasText()) { event->acceptProposedAction(); Point point = PointFromQPoint(event->pos()); @@ -393,7 +395,9 @@ void ScintillaEditBase::dragLeaveEvent(QDragLeaveEvent * /* event */) void ScintillaEditBase::dragMoveEvent(QDragMoveEvent *event) { - if (event->mimeData()->hasText()) { + if (event->mimeData()->hasUrls()) { + event->acceptProposedAction(); + } else if (event->mimeData()->hasText()) { event->acceptProposedAction(); Point point = PointFromQPoint(event->pos()); @@ -405,7 +409,10 @@ void ScintillaEditBase::dragMoveEvent(QDragMoveEvent *event) void ScintillaEditBase::dropEvent(QDropEvent *event) { - if (event->mimeData()->hasText()) { + if (event->mimeData()->hasUrls()) { + event->acceptProposedAction(); + sqt->DropUrls(event->mimeData()); + } else if (event->mimeData()->hasText()) { event->acceptProposedAction(); Point point = PointFromQPoint(event->pos()); @@ -746,7 +753,7 @@ void ScintillaEditBase::notifyParent(SCNotification scn) break; case SCN_URIDROPPED: - emit uriDropped(); + emit uriDropped(QString::fromUtf8(scn.text)); break; case SCN_DWELLSTART: |