From 8918bc9ca9d996d87f30a38fadfe3ae1dd180a5d Mon Sep 17 00:00:00 2001 From: Justin Dailey Date: Tue, 4 Jul 2017 09:54:16 +1000 Subject: Dropping files fires the SCN_URIDROPPED notification instead of inserting text. --- qt/ScintillaEditBase/ScintillaQt.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'qt/ScintillaEditBase/ScintillaQt.cpp') diff --git a/qt/ScintillaEditBase/ScintillaQt.cpp b/qt/ScintillaEditBase/ScintillaQt.cpp index 54e5ccbde..73319bda8 100644 --- a/qt/ScintillaEditBase/ScintillaQt.cpp +++ b/qt/ScintillaEditBase/ScintillaQt.cpp @@ -401,6 +401,15 @@ void ScintillaQt::NotifyParent(SCNotification scn) emit notifyParent(scn); } +void ScintillaQt::NotifyURIDropped(const char *uri) +{ + SCNotification scn = {}; + scn.nmhdr.code = SCN_URIDROPPED; + scn.text = uri; + + NotifyParent(scn); +} + bool ScintillaQt::FineTickerRunning(TickReason reason) { return timers[reason] != 0; @@ -748,6 +757,13 @@ void ScintillaQt::Drop(const Point &point, const QMimeData *data, bool move) DropAt(movePos, bytes, len, move, rectangular); } +void ScintillaQt::DropUrls(const QMimeData *data) +{ + foreach(const QUrl &url, data->urls()) { + NotifyURIDropped(url.toString().toUtf8().constData()); + } +} + void ScintillaQt::timerEvent(QTimerEvent *event) { for (TickReason tr=tickCaret; tr<=tickDwell; tr = static_cast(tr+1)) { -- cgit v1.2.3