diff options
Diffstat (limited to 'Swift/QtUI')
-rw-r--r-- | Swift/QtUI/QtChatWindow.cpp | 1 | ||||
-rw-r--r-- | Swift/QtUI/QtTextEdit.cpp | 10 | ||||
-rw-r--r-- | Swift/QtUI/QtTextEdit.h | 2 |
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); |