summaryrefslogtreecommitdiffstats
path: root/Swift
diff options
context:
space:
mode:
Diffstat (limited to 'Swift')
-rw-r--r--Swift/QtUI/QtChatWindow.cpp1
-rw-r--r--Swift/QtUI/QtTextEdit.cpp10
-rw-r--r--Swift/QtUI/QtTextEdit.h2
3 files changed, 13 insertions, 0 deletions
diff --git a/Swift/QtUI/QtChatWindow.cpp b/Swift/QtUI/QtChatWindow.cpp
index 48d331e..7051683 100644
--- a/Swift/QtUI/QtChatWindow.cpp
+++ b/Swift/QtUI/QtChatWindow.cpp
@@ -152,2 +152,3 @@ QtChatWindow::QtChatWindow(const QString& contact, QtChatTheme* theme, UIEventSt
connect(input_, SIGNAL(lostFocus()), this, SLOT(handleTextInputLostFocus()));
+ connect(input_, SIGNAL(itemDropped(QDropEvent*)), this, SLOT(dropEvent(QDropEvent*)));
QPushButton* emojisButton_ = new QPushButton(this);
diff --git a/Swift/QtUI/QtTextEdit.cpp b/Swift/QtUI/QtTextEdit.cpp
index 1b4d76d..168e6fc 100644
--- a/Swift/QtUI/QtTextEdit.cpp
+++ b/Swift/QtUI/QtTextEdit.cpp
@@ -17,2 +17,3 @@
#include <QTextDocument>
+#include <QMimeData>
@@ -181,2 +182,11 @@ void QtTextEdit::contextMenuEvent(QContextMenuEvent* event) {
+void QtTextEdit::dropEvent(QDropEvent* event) {
+ if (event->mimeData()->hasUrls()) {
+ itemDropped(event);
+ }
+ else {
+ QTextEdit::dropEvent(event);
+ }
+}
+
void QtTextEdit::addSuggestions(QMenu* menu, QContextMenuEvent* event)
diff --git a/Swift/QtUI/QtTextEdit.h b/Swift/QtUI/QtTextEdit.h
index 228aa9e..7ce5d88 100644
--- a/Swift/QtUI/QtTextEdit.h
+++ b/Swift/QtUI/QtTextEdit.h
@@ -37,2 +37,3 @@ namespace Swift {
void lostFocus();
+ void itemDropped(QDropEvent* event);
@@ -46,2 +47,3 @@ namespace Swift {
virtual void contextMenuEvent(QContextMenuEvent* event);
+ virtual void dropEvent(QDropEvent* event);