From 4762863d93e56b9d4766e65a0247c8811b4c6756 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sat, 16 Jan 2021 17:32:44 +0000 Subject: skinned: refactoring git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@9645 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Ui/skinned/listwidget.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/plugins/Ui') diff --git a/src/plugins/Ui/skinned/listwidget.cpp b/src/plugins/Ui/skinned/listwidget.cpp index 841fda37d..c6cd1a700 100644 --- a/src/plugins/Ui/skinned/listwidget.cpp +++ b/src/plugins/Ui/skinned/listwidget.cpp @@ -493,24 +493,31 @@ void ListWidget::updateSkin() void ListWidget::dragEnterEvent(QDragEnterEvent *event) { - if (event->mimeData()->hasFormat("text/uri-list")) + if(event->mimeData()->hasFormat("text/uri-list") || event->mimeData()->hasFormat("application/json")) event->acceptProposedAction(); } void ListWidget::dropEvent(QDropEvent *event) { - if (event->mimeData()->hasUrls()) + if(event->mimeData()->hasUrls() || event->mimeData()->hasFormat("application/json")) { - QList list_urls = event->mimeData()->urls(); event->acceptProposedAction(); QApplication::restoreOverrideCursor(); int index = indexAt(event->pos().y()); if(index == INVALID_INDEX) - { index = qMin(m_first + m_row_count, m_model->count()); + + if(event->mimeData()->hasUrls()) + { + QList list_urls = event->mimeData()->urls(); + m_model->insert(index, list_urls); + } + else if(event->mimeData()->hasFormat("application/json")) + { + QByteArray json = event->mimeData()->data("application/json"); + m_model->insert(index, json); } - m_model->insert(index, list_urls); } m_drop_index = INVALID_INDEX; } -- cgit v1.2.3-13-gbd6f