File indexing completed on 2024-04-28 05:48:12

0001 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0002 // SPDX-FileCopyrightText: 2022 Harald Sitter <sitter@kde.org>
0003 
0004 #include "dropperItem.h"
0005 
0006 #include <KUrlMimeData>
0007 
0008 namespace Filelight
0009 {
0010 
0011 DropperItem::DropperItem(QQuickItem *parent)
0012     : QQuickItem(parent)
0013 {
0014     setFlag(QQuickItem::ItemAcceptsDrops, true);
0015 }
0016 
0017 void DropperItem::dropEvent(QDropEvent *e)
0018 {
0019     if (const QList<QUrl> uriList = KUrlMimeData::urlsFromMimeData(e->mimeData()); !uriList.isEmpty()) {
0020         Q_EMIT urlsDropped(uriList);
0021     }
0022 }
0023 
0024 void DropperItem::dragEnterEvent(QDragEnterEvent *e)
0025 {
0026     dragMoveEvent(e);
0027 }
0028 
0029 void DropperItem::dragMoveEvent(QDragMoveEvent *e)
0030 {
0031     if (const QList<QUrl> uriList = KUrlMimeData::urlsFromMimeData(e->mimeData()); !uriList.isEmpty()) {
0032         e->acceptProposedAction();
0033     }
0034 }
0035 
0036 } // namespace Filelight