┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/panels/places/placespanel.cpp
diff options
context:
space:
mode:
authorJin Liu <[email protected]>2024-02-29 23:13:47 +0000
committerJin Liu <[email protected]>2024-02-29 23:13:47 +0000
commitdc149ec5e52f52c514cf362603d05ba8eea506b8 (patch)
tree70442a1ab27fedf220daeca496dfb3c842379b93 /src/panels/places/placespanel.cpp
parent992272f8c5b80b0d96e9419cdbe14b6f3d2a22e4 (diff)
DragAndDropHelper::updateDropAction: use StatJob for remote URLs
When dragging onto tabs/Places from a remote URL, we don't process the QDropEvent immediately, but start a StatJob and process the event when it finishes. Also, the result of the StatJob is cached for 30 seconds, to avoid starting duplicate jobs.
Diffstat (limited to 'src/panels/places/placespanel.cpp')
-rw-r--r--src/panels/places/placespanel.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/panels/places/placespanel.cpp b/src/panels/places/placespanel.cpp
index ba3451bd5..eaf2642eb 100644
--- a/src/panels/places/placespanel.cpp
+++ b/src/panels/places/placespanel.cpp
@@ -15,7 +15,6 @@
#include "dolphin_placespanelsettings.h"
#include "dolphinplacesmodelsingleton.h"
#include "settings/dolphinsettingsdialog.h"
-#include "views/draganddrophelper.h"
#include <KFilePlacesModel>
#include <KIO/DropJob>
@@ -32,6 +31,7 @@
PlacesPanel::PlacesPanel(QWidget *parent)
: KFilePlacesView(parent)
+ , m_dragAndDropHelper(this)
{
setDropOnPlaceEnabled(true);
connect(this, &PlacesPanel::urlsDropped, this, &PlacesPanel::slotUrlsDropped);
@@ -161,7 +161,7 @@ void PlacesPanel::dragMoveEvent(QDragMoveEvent *event)
if (!url.isValid() || !KProtocolManager::supportsWriting(url)) {
event->setDropAction(Qt::IgnoreAction);
} else {
- DragAndDropHelper::updateDropAction(event, url);
+ m_dragAndDropHelper.updateDropAction(event, url);
}
}
}