diff options
| author | Kai Uwe Broulik <[email protected]> | 2026-01-29 17:20:21 +0100 |
|---|---|---|
| committer | Kai Uwe Broulik <[email protected]> | 2026-02-01 17:33:06 +0000 |
| commit | 7d0bbe06dc6e3f69144a5a2c4c697e2d8d0681ec (patch) | |
| tree | 9cb153f0ea3a1993e6a1401047afcc9bedf90acd /src | |
| parent | 66b466443db933354c5f3e7aeaa30f754860ec21 (diff) | |
Support drop onto executable to run it
We already support dropping onto desktop files.
This is also something that KDirOperator did but Dolphin does not.
Diffstat (limited to 'src')
| -rw-r--r-- | src/kitemviews/kfileitemmodel.cpp | 2 | ||||
| -rw-r--r-- | src/views/dolphinview.cpp | 2 | ||||
| -rw-r--r-- | src/views/draganddrophelper.cpp | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp index 0958e921f..e4ac1dba0 100644 --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@ -387,7 +387,7 @@ bool KFileItemModel::canEnterOnHover(int index) const } else { item = fileItem(index); } - return !item.isNull() && (item.isDir() || item.isDesktopFile()); + return !item.isNull() && (item.isDir() || item.isDesktopFile() || (item.isFile() && item.isLocalFile() && item.isExecutable())); } QString KFileItemModel::roleDescription(const QByteArray &role) const diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index 9ade1e5e9..ec012c679 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -1404,7 +1404,7 @@ void DolphinView::slotItemDropEvent(int index, QGraphicsSceneDragDropEvent *even { QUrl destUrl; KFileItem destItem = m_model->fileItem(index); - if (destItem.isNull() || (!destItem.isDir() && !destItem.isDesktopFile())) { + if (destItem.isNull() || (!destItem.isDir() && !destItem.isDesktopFile() && !destItem.isExecutable())) { // Use the URL of the view as drop target if the item is no directory // or desktop-file destItem = m_model->rootItem(); diff --git a/src/views/draganddrophelper.cpp b/src/views/draganddrophelper.cpp index 7b9949df4..7b0e8ef66 100644 --- a/src/views/draganddrophelper.cpp +++ b/src/views/draganddrophelper.cpp @@ -70,7 +70,7 @@ KIO::DropJob *DragAndDropHelper::dropUrls(const QUrl &destUrl, QDropEvent *event bool DragAndDropHelper::supportsDropping(const KFileItem &destItem) { - return (destItem.isDir() && destItem.isWritable()) || destItem.isDesktopFile(); + return (destItem.isDir() && destItem.isWritable()) || destItem.isDesktopFile() || (destItem.isFile() && destItem.isLocalFile() && destItem.isExecutable()); } void DragAndDropHelper::updateDropAction(QDropEvent *event, const QUrl &destUrl) |
