X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/59d01e8accbfb7f31fb5ea5ef4c94e57d427994a..bd47eb2e6d:/src/kitemviews/private/kfileitemclipboard.cpp diff --git a/src/kitemviews/private/kfileitemclipboard.cpp b/src/kitemviews/private/kfileitemclipboard.cpp index ebf50e215..d27869dff 100644 --- a/src/kitemviews/private/kfileitemclipboard.cpp +++ b/src/kitemviews/private/kfileitemclipboard.cpp @@ -19,17 +19,17 @@ #include "kfileitemclipboard.h" -#include #include #include #include +#include class KFileItemClipboardSingleton { public: KFileItemClipboard instance; }; -K_GLOBAL_STATIC(KFileItemClipboardSingleton, s_KFileItemClipboard) +Q_GLOBAL_STATIC(KFileItemClipboardSingleton, s_KFileItemClipboard) @@ -38,12 +38,12 @@ KFileItemClipboard* KFileItemClipboard::instance() return &s_KFileItemClipboard->instance; } -bool KFileItemClipboard::isCut(const KUrl& url) const +bool KFileItemClipboard::isCut(const QUrl& url) const { return m_cutItems.contains(url); } -QList KFileItemClipboard::cutItems() const +QList KFileItemClipboard::cutItems() const { return m_cutItems.toList(); } @@ -55,10 +55,18 @@ KFileItemClipboard::~KFileItemClipboard() void KFileItemClipboard::updateCutItems() { const QMimeData* mimeData = QApplication::clipboard()->mimeData(); - const QByteArray data = mimeData->data("application/x-kde-cutselection"); + + // mimeData can be 0 according to https://bugs.kde.org/show_bug.cgi?id=335053 + if (!mimeData) { + m_cutItems.clear(); + emit cutItemsChanged(); + return; + } + + const QByteArray data = mimeData->data(QStringLiteral("application/x-kde-cutselection")); const bool isCutSelection = (!data.isEmpty() && data.at(0) == QLatin1Char('1')); if (isCutSelection) { - m_cutItems = KUrl::List::fromMimeData(mimeData).toSet(); + m_cutItems = KUrlMimeData::urlsFromMimeData(mimeData).toSet(); } else { m_cutItems.clear(); } @@ -74,5 +82,3 @@ KFileItemClipboard::KFileItemClipboard() : connect(QApplication::clipboard(), &QClipboard::dataChanged, this, &KFileItemClipboard::updateCutItems); } - -#include "kfileitemclipboard.moc"