Skip to content

Commit

Permalink
kde-apps/dolphin: Revert "portalize drag urls"
Browse files Browse the repository at this point in the history
  • Loading branch information
a17r committed Dec 14, 2022
1 parent 544cce4 commit 559300b
Show file tree
Hide file tree
Showing 2 changed files with 191 additions and 0 deletions.
97 changes: 97 additions & 0 deletions kde-apps/dolphin/dolphin-22.12.0-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

ECM_HANDBOOK="optional"
ECM_TEST="true"
PVCUT=$(ver_cut 1-3)
KFMIN=5.99.0
QTMIN=5.15.5
VIRTUALX_REQUIRED="test"
inherit ecm gear.kde.org optfeature

DESCRIPTION="Plasma filemanager focusing on usability"
HOMEPAGE="https://apps.kde.org/dolphin/ https://userbase.kde.org/Dolphin"

LICENSE="GPL-2" # TODO: CHECK
SLOT="5"
KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
IUSE="activities semantic-desktop telemetry"

DEPEND="
>=dev-qt/qtconcurrent-${QTMIN}:5
>=dev-qt/qtdbus-${QTMIN}:5
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtwidgets-${QTMIN}:5
>=dev-qt/qtxml-${QTMIN}:5
>=kde-frameworks/kbookmarks-${KFMIN}:5
>=kde-frameworks/kcmutils-${KFMIN}:5
>=kde-frameworks/kcodecs-${KFMIN}:5
>=kde-frameworks/kcompletion-${KFMIN}:5
>=kde-frameworks/kconfig-${KFMIN}:5
>=kde-frameworks/kconfigwidgets-${KFMIN}:5
>=kde-frameworks/kcoreaddons-${KFMIN}:5
>=kde-frameworks/kcrash-${KFMIN}:5
>=kde-frameworks/kdbusaddons-${KFMIN}:5
>=kde-frameworks/ki18n-${KFMIN}:5
>=kde-frameworks/kiconthemes-${KFMIN}:5
>=kde-frameworks/kio-${KFMIN}:5=
>=kde-frameworks/kitemviews-${KFMIN}:5
>=kde-frameworks/kjobwidgets-${KFMIN}:5
>=kde-frameworks/knewstuff-${KFMIN}:5
>=kde-frameworks/knotifications-${KFMIN}:5
>=kde-frameworks/kparts-${KFMIN}:5
>=kde-frameworks/kservice-${KFMIN}:5
>=kde-frameworks/ktextwidgets-${KFMIN}:5
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
>=kde-frameworks/kwindowsystem-${KFMIN}:5
>=kde-frameworks/kxmlgui-${KFMIN}:5
>=kde-frameworks/solid-${KFMIN}:5
>=media-libs/phonon-4.11.0
activities? ( >=kde-frameworks/kactivities-${KFMIN}:5 )
semantic-desktop? (
>=kde-apps/baloo-widgets-${PVCUT}:5
>=kde-frameworks/baloo-${KFMIN}:5
>=kde-frameworks/kfilemetadata-${KFMIN}:5
)
telemetry? ( dev-libs/kuserfeedback:5 )
"
RDEPEND="${DEPEND}
>=kde-apps/kio-extras-${PVCUT}:5
"

PATCHES=( "${FILESDIR}/${P}-revert-portalize-drag-urls.patch" )

src_configure() {
local mycmakeargs=(
-DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt5=ON
$(cmake_use_find_package activities KF5Activities)
$(cmake_use_find_package semantic-desktop KF5Baloo)
$(cmake_use_find_package semantic-desktop KF5BalooWidgets)
$(cmake_use_find_package semantic-desktop KF5FileMetaData)
$(cmake_use_find_package telemetry KUserFeedback)
)
ecm_src_configure
}

src_test() {
local myctestargs=(
# servicemenuinstaller requires ruby, no thanks
# dolphinmainwindowtest, kitemlistcontrollertest, kfileitemlistviewtest, kfileitemmodeltest hang forever
# placesitemmodeltest requires DBus
-E "(servicemenuinstaller|dolphinmainwindowtest|kfileitemlistviewtest|kfileitemmodeltest|kitemlistcontrollertest|placesitemmodeltest)"
)
ecm_src_test
}

pkg_postinst() {
if [[ -z "${REPLACING_VERSIONS}" ]]; then
optfeature "compress/extract and other actions" kde-apps/ark:${SLOT}
optfeature "crypto actions" kde-apps/kleopatra:${SLOT}
optfeature "video file thumbnails" kde-apps/ffmpegthumbs:${SLOT}
optfeature "graphics file thumbnails" kde-apps/thumbnailers:${SLOT}
optfeature "'Share' context menu actions" kde-frameworks/purpose:${SLOT}
fi
ecm_pkg_postinst
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
From c8aed8ac81d9f7f3dc93a7570037041228a98bf4 Mon Sep 17 00:00:00 2001
From: Felix Ernst <[email protected]>
Date: Wed, 14 Dec 2022 12:33:51 +0000
Subject: [PATCH] Revert "portalize drag urls"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This reverts commit 8d7e600f63a1961294dfe2c278a710b4ce0716e9.

While this revert unfortunately removes Dolphin's ability to copy to
sandboxed applications, the bugs being temporarily fixed by this seem
more important. See the bugs mentioned below for details.

Especially copy-pasting needs to work flawlessly for an application
like Dolphin. After the revert this will either work correctly or – in
the case of sandboxed applications – not at all.

CCBUG: 457529
CCBUG: 462928
---
src/kitemviews/kitemlistcontroller.cpp | 4 +---
src/panels/folders/treeviewcontextmenu.cpp | 1 -
src/views/dolphinview.cpp | 5 +----
3 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/src/kitemviews/kitemlistcontroller.cpp b/src/kitemviews/kitemlistcontroller.cpp
index 955e418e8..29dd13aac 100644
--- a/src/kitemviews/kitemlistcontroller.cpp
+++ b/src/kitemviews/kitemlistcontroller.cpp
@@ -17,7 +17,6 @@

#include <KTwoFingerSwipe>
#include <KTwoFingerTap>
-#include <KUrlMimeData>

#include <QAccessible>
#include <QApplication>
@@ -1334,11 +1333,10 @@ void KItemListController::startDragging()
return;
}

- QMimeData *data = m_model->createMimeData(selectedItems);
+ QMimeData* data = m_model->createMimeData(selectedItems);
if (!data) {
return;
}
- KUrlMimeData::exportUrlsToPortal(data);

// The created drag object will be owned and deleted
// by QApplication::activeWindow().
diff --git a/src/panels/folders/treeviewcontextmenu.cpp b/src/panels/folders/treeviewcontextmenu.cpp
index 893a494fb..e0da9e976 100644
--- a/src/panels/folders/treeviewcontextmenu.cpp
+++ b/src/panels/folders/treeviewcontextmenu.cpp
@@ -168,7 +168,6 @@ void TreeViewContextMenu::populateMimeData(QMimeData* mimeData, bool cut)
bool dummy;
mostLocalUrls.append(m_fileItem.mostLocalUrl(&dummy));
KIO::setClipboardDataCut(mimeData, cut);
- KUrlMimeData::exportUrlsToPortal(mimeData);
KUrlMimeData::setUrls(kdeUrls, mostLocalUrls, mimeData);
}

diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp
index e8603858f..88f275557 100644
--- a/src/views/dolphinview.cpp
+++ b/src/views/dolphinview.cpp
@@ -45,7 +45,6 @@
#include <KLocalizedString>
#include <KMessageBox>
#include <KProtocolManager>
-#include <KUrlMimeData>

#include <kwidgetsaddons_version.h>

@@ -802,14 +801,12 @@ void DolphinView::cutSelectedItemsToClipboard()
{
QMimeData* mimeData = selectionMimeData();
KIO::setClipboardDataCut(mimeData, true);
- KUrlMimeData::exportUrlsToPortal(mimeData);
QApplication::clipboard()->setMimeData(mimeData);
}

void DolphinView::copySelectedItemsToClipboard()
{
- QMimeData *mimeData = selectionMimeData();
- KUrlMimeData::exportUrlsToPortal(mimeData);
+ QMimeData* mimeData = selectionMimeData();
QApplication::clipboard()->setMimeData(mimeData);
}

--
GitLab

0 comments on commit 559300b

Please sign in to comment.