summaryrefslogtreecommitdiff
path: root/kde-apps/dolphin
diff options
context:
space:
mode:
Diffstat (limited to 'kde-apps/dolphin')
-rw-r--r--kde-apps/dolphin/Manifest3
-rw-r--r--kde-apps/dolphin/dolphin-23.04.1.ebuild4
-rw-r--r--kde-apps/dolphin/files/dolphin-23.04.1-fix-startup-delay.patch121
3 files changed, 127 insertions, 1 deletions
diff --git a/kde-apps/dolphin/Manifest b/kde-apps/dolphin/Manifest
index 17bf9e827681..c33964bc6132 100644
--- a/kde-apps/dolphin/Manifest
+++ b/kde-apps/dolphin/Manifest
@@ -1,5 +1,6 @@
+AUX dolphin-23.04.1-fix-startup-delay.patch 5125 BLAKE2B 965da1cebb6ae2d230d5ac084beb7e0561405ca294e94045780a494323bbbc2c697e2eee11bdc127a02cb02a2f89300dc314a223e23bcebb1e476575adc0ff1f SHA512 cb9a50ab1c928b98409ce64d1177fb2b39951c4b8444503105a3641f3a63d152b413d094597746fb245fa71ba80427c7bbb8c6417b289336563f9334370d8b2a
DIST dolphin-22.12.3.tar.xz 5693220 BLAKE2B cf156536d18fe6f8fb9d563be4e7cd96ad012b32e23a367e061beb5b3567039d1c7e42a6e32b348d493f16b59def3423f3c66bbea00c14017cac6383ded391c3 SHA512 2683d02831ac75b311fc0ef3610f1086cf2a00860fb9495c2049b86dee5deb4deeee81d8dbb1c6647e33afc7323b2f4a620e0c6512fa1a499e4b830a9bf6e0e1
DIST dolphin-23.04.1.tar.xz 5735960 BLAKE2B 5d04c5f258ed2db3a6154885051868834a235ee1808430bed97fc837367d4cb1ef813270a97630c578006967ea5e0f010e045b94e31afb380e008933cb59eddb SHA512 9211d171ed3e7cc293af0757eea113d01411dafbdd3d4bc53b2a21302b44973705c06a7420a23983d2ed026d1a7205f07eb982526c913f6892a2d7115197724e
EBUILD dolphin-22.12.3.ebuild 3115 BLAKE2B c1f712bba0b7c21e24efc0684b7c936a36f3f9934782b63726e7281d01d70eac426a73cb1ebaccb007de3944d42b382549bcb4be3ff8c328ce2b3639397faf73 SHA512 c34bb0cbce8eb2a75295b12f545fb1944ca077ecbac5f5bc2f2d50e2ae96c1d26cf748994a816a1d133b96f15b8372eb9f5fcfffebc20ec5d37dff73d87b7f7c
-EBUILD dolphin-23.04.1.ebuild 3151 BLAKE2B a423b8934f5026492ae5925a3744e5d8f3a617911252dbb83b25d56bf734f7b8042b11d2075e64f8f105382f6d31f86f47308f80ab39b642c3e1991ece5e3424 SHA512 59fb5727fd6feb1b9069b0f703147f70cf0870574a9315b83bf4271930d2beda281ea4881dc94f1dcf9eb15e0cff0d3cdf75d9cd0f2ca7abe359c52779a8bf6f
+EBUILD dolphin-23.04.1.ebuild 3219 BLAKE2B 55fcfa56b3ce2bd9774ddd3d037f05c6c2ebfbac7ac8e68f9979ec1b72f2eb17c2d0fd2435eb4cbb0aa4b8658d64bdb7badd8bb7943f9271de48bec9583d3705 SHA512 2566a6cfdb07b785ca02ffdee10a858b9c956135ab852ed59c580b314a4c7723f2ef9d73e887d15fb04984bc73e290f2c30245058e57ade03112a19fa4512c3e
MISC metadata.xml 430 BLAKE2B 4e7f2312a9ff5828bb5090867a1cb3f8e80365cf7fe92e45973ee6d1fbf1bafaa9427227b6cc424214b4892c92188918c36e25ca346a89e44e2b2ea25d2871b8 SHA512 cd3e017e0c9259940450a1b7a6fa5b8c81e82963b3c4d63b0921474f42651076a0fd7c3dd90d8a23b57646ed6eb2ccba8fbd41944d4e874a4e2ac58c981a68c0
diff --git a/kde-apps/dolphin/dolphin-23.04.1.ebuild b/kde-apps/dolphin/dolphin-23.04.1.ebuild
index 6972df06322e..c323a3f3ea19 100644
--- a/kde-apps/dolphin/dolphin-23.04.1.ebuild
+++ b/kde-apps/dolphin/dolphin-23.04.1.ebuild
@@ -62,6 +62,10 @@ RDEPEND="${DEPEND}
>=kde-apps/kio-extras-${PVCUT}:5
"
+PATCHES=(
+ "${FILESDIR}/dolphin-23.04.1-fix-startup-delay.patch"
+)
+
src_configure() {
local mycmakeargs=(
-DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt5=ON
diff --git a/kde-apps/dolphin/files/dolphin-23.04.1-fix-startup-delay.patch b/kde-apps/dolphin/files/dolphin-23.04.1-fix-startup-delay.patch
new file mode 100644
index 000000000000..6a34ff66efb3
--- /dev/null
+++ b/kde-apps/dolphin/files/dolphin-23.04.1-fix-startup-delay.patch
@@ -0,0 +1,121 @@
+Revert patch https://invent.kde.org/system/dolphin/-/commit/d19800c69198b904ae47cb1e53dfe28f74618eb2
+See https://bugs.gentoo.org/906170
+---
+diff -ruN dolphin-23.04.1/src/dolphinmainwindow.cpp new/src/dolphinmainwindow.cpp
+--- dolphin-23.04.1/src/dolphinmainwindow.cpp 2023-05-09 10:52:07.000000000 +0200
++++ new/src/dolphinmainwindow.cpp 2023-05-13 22:37:50.984895964 +0200
+@@ -270,31 +270,6 @@
+ openFiles(QUrl::fromStringList(files), splitView);
+ }
+
+-bool DolphinMainWindow::isOnCurrentDesktop() const
+-{
+-#if HAVE_X11
+- if (KWindowSystem::isPlatformX11()) {
+- const NET::Properties properties = NET::WMDesktop;
+- KWindowInfo info(this->winId(), properties);
+- return info.isOnCurrentDesktop();
+- }
+-#endif
+- return true;
+-}
+-
+-bool DolphinMainWindow::isOnActivity(const QString &activityId) const
+-{
+-#if HAVE_X11 && HAVE_KACTIVITIES
+- if (KWindowSystem::isPlatformX11()) {
+- const NET::Properties properties = NET::Supported;
+- const NET::Properties2 properties2 = NET::WM2Activities;
+- KWindowInfo info(this->winId(), properties, properties2);
+- return info.activities().contains(activityId);
+- }
+-#endif
+- return true;
+-}
+-
+ void DolphinMainWindow::activateWindow(const QString &activationToken)
+ {
+ window()->setAttribute(Qt::WA_NativeWindow, true);
+diff -ruN dolphin-23.04.1/src/dolphinmainwindow.h new/src/dolphinmainwindow.h
+--- dolphin-23.04.1/src/dolphinmainwindow.h 2023-05-09 10:52:07.000000000 +0200
++++ new/src/dolphinmainwindow.h 2023-05-13 22:37:50.984895964 +0200
+@@ -203,9 +203,6 @@
+ /** @see GeneralSettings::splitViewChanged() */
+ void slotSplitViewChanged();
+
+- bool isOnActivity(const QString &activityId) const;
+- bool isOnCurrentDesktop() const;
+-
+ Q_SIGNALS:
+ /**
+ * Is sent if the selection of the currently active view has
+diff -ruN dolphin-23.04.1/src/global.cpp new/src/global.cpp
+--- dolphin-23.04.1/src/global.cpp 2023-05-09 10:52:07.000000000 +0200
++++ new/src/global.cpp 2023-05-13 22:50:40.449973915 +0200
+@@ -16,9 +16,6 @@
+ #include <KIO/ApplicationLauncherJob>
+ #include <KService>
+ #include <KWindowSystem>
+-#if HAVE_KACTIVITIES
+-#include <KActivities/Consumer>
+-#endif
+
+ #include <QApplication>
+
+@@ -143,37 +140,13 @@
+
+ QVector<QPair<QSharedPointer<OrgKdeDolphinMainWindowInterface>, QStringList>> Dolphin::dolphinGuiInstances(const QString &preferredService)
+ {
+-#if HAVE_KACTIVITIES
+- static std::once_flag one_consumer;
+- static KActivities::Consumer *consumer;
+- std::call_once(one_consumer, []() {
+- consumer = new KActivities::Consumer();
+- // ensures the consumer is ready for query
+- QEventLoop loop;
+- QObject::connect(consumer, &KActivities::Consumer::serviceStatusChanged, &loop, &QEventLoop::quit);
+- loop.exec();
+- });
+-#endif
+-
+ QVector<QPair<QSharedPointer<OrgKdeDolphinMainWindowInterface>, QStringList>> dolphinInterfaces;
+- const auto tryAppendInterface = [&dolphinInterfaces](const QString &service) {
+- // Check if instance can handle our URLs
+- QSharedPointer<OrgKdeDolphinMainWindowInterface> interface(
+- new OrgKdeDolphinMainWindowInterface(service, QStringLiteral("/dolphin/Dolphin_1"), QDBusConnection::sessionBus()));
+- if (interface->isValid() && !interface->lastError().isValid()) {
+-#if HAVE_KACTIVITIES
+- const auto currentActivity = consumer->currentActivity();
+- if (currentActivity.isEmpty() || currentActivity == QStringLiteral("00000000-0000-0000-0000-000000000000")
+- || interface->isOnActivity(consumer->currentActivity()))
+-#endif
+- if (interface->isOnCurrentDesktop()) {
+- dolphinInterfaces.append(qMakePair(interface, QStringList()));
+- }
+- }
+- };
+-
+ if (!preferredService.isEmpty()) {
+- tryAppendInterface(preferredService);
++ QSharedPointer<OrgKdeDolphinMainWindowInterface> preferredInterface(
++ new OrgKdeDolphinMainWindowInterface(preferredService, QStringLiteral("/dolphin/Dolphin_1"), QDBusConnection::sessionBus()));
++ if (preferredInterface->isValid() && !preferredInterface->lastError().isValid()) {
++ dolphinInterfaces.append(qMakePair(preferredInterface, QStringList()));
++ }
+ }
+
+ // Look for dolphin instances among all available dbus services.
+@@ -185,7 +158,12 @@
+ const QString myPid = QLatin1Char('-') + QString::number(QCoreApplication::applicationPid());
+ for (const QString &service : dbusServices) {
+ if (service.startsWith(pattern) && !service.endsWith(myPid)) {
+- tryAppendInterface(service);
++ // Check if instance can handle our URLs
++ QSharedPointer<OrgKdeDolphinMainWindowInterface> interface(
++ new OrgKdeDolphinMainWindowInterface(service, QStringLiteral("/dolphin/Dolphin_1"), QDBusConnection::sessionBus()));
++ if (interface->isValid() && !interface->lastError().isValid()) {
++ dolphinInterfaces.append(qMakePair(interface, QStringList()));
++ }
+ }
+ }
+