summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPrzemyslaw Maciag <troll@gentoo.org>2007-03-10 23:22:09 +0000
committerPrzemyslaw Maciag <troll@gentoo.org>2007-03-10 23:22:09 +0000
commitd005a023b33217b94c70be85490bd235a98f4a6e (patch)
treecb2970f4f0dbec1cc5913f57066400a362515158
parentStable on alpha wrt security #153911 (diff)
downloadgentoo-2-d005a023b33217b94c70be85490bd235a98f4a6e.tar.gz
gentoo-2-d005a023b33217b94c70be85490bd235a98f4a6e.tar.bz2
gentoo-2-d005a023b33217b94c70be85490bd235a98f4a6e.zip
Added patch to allow browsing archive files (see #170335)
(Portage version: 2.1.2.1-r1)
-rw-r--r--kde-misc/dolphin/ChangeLog9
-rw-r--r--kde-misc/dolphin/dolphin-0.8.2-r1.ebuild19
-rw-r--r--kde-misc/dolphin/files/digest-dolphin-0.8.2-r13
-rw-r--r--kde-misc/dolphin/files/dolphin-0.8.2-tarZip-handlers.patch103
4 files changed, 133 insertions, 1 deletions
diff --git a/kde-misc/dolphin/ChangeLog b/kde-misc/dolphin/ChangeLog
index 2775d649843d..715a71e9b68f 100644
--- a/kde-misc/dolphin/ChangeLog
+++ b/kde-misc/dolphin/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for kde-misc/dolphin
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-misc/dolphin/ChangeLog,v 1.9 2007/03/01 01:42:07 troll Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-misc/dolphin/ChangeLog,v 1.10 2007/03/10 23:22:09 troll Exp $
+
+*dolphin-0.8.2-r1 (10 Mar 2007)
+
+ 10 Mar 2007; Przemysław Maciąg <troll@gentoo.org>
+ +files/dolphin-0.8.2-tarZip-handlers.patch, +dolphin-0.8.2-r1.ebuild:
+ Added patch to allow browsing archive files (zip and various tar). Patch
+ provided by Filip Brcic (#170335).
*dolphin-0.8.2 (01 Mar 2007)
diff --git a/kde-misc/dolphin/dolphin-0.8.2-r1.ebuild b/kde-misc/dolphin/dolphin-0.8.2-r1.ebuild
new file mode 100644
index 000000000000..7efda59bedb7
--- /dev/null
+++ b/kde-misc/dolphin/dolphin-0.8.2-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-misc/dolphin/dolphin-0.8.2-r1.ebuild,v 1.1 2007/03/10 23:22:09 troll Exp $
+
+inherit kde
+
+DESCRIPTION="A file manager for KDE focusing on usability."
+HOMEPAGE="http://enzosworld.gmxhome.de/"
+SRC_URI="http://enzosworld.gmxhome.de/download/${P}.tar.gz"
+
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
+
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="kdeenablefinal"
+
+need-kde 3.5
+
+PATCHES="${FILESDIR}/${P}-tarZip-handlers.patch"
diff --git a/kde-misc/dolphin/files/digest-dolphin-0.8.2-r1 b/kde-misc/dolphin/files/digest-dolphin-0.8.2-r1
new file mode 100644
index 000000000000..3a147cc81592
--- /dev/null
+++ b/kde-misc/dolphin/files/digest-dolphin-0.8.2-r1
@@ -0,0 +1,3 @@
+MD5 376f7a1deca0f4d69fa96a393cea464b dolphin-0.8.2.tar.gz 1842748
+RMD160 9af44361215caa48940395e0e720cd96be71fec6 dolphin-0.8.2.tar.gz 1842748
+SHA256 fcda66ed150c9a67be36501937249f2ab02d7633549d95b15b19432642795062 dolphin-0.8.2.tar.gz 1842748
diff --git a/kde-misc/dolphin/files/dolphin-0.8.2-tarZip-handlers.patch b/kde-misc/dolphin/files/dolphin-0.8.2-tarZip-handlers.patch
new file mode 100644
index 000000000000..c4861aa6f08b
--- /dev/null
+++ b/kde-misc/dolphin/files/dolphin-0.8.2-tarZip-handlers.patch
@@ -0,0 +1,103 @@
+diff -Naur dolphin-0.8.2-orig/src/dolphinview.cpp dolphin-0.8.2-new/src/dolphinview.cpp
+--- dolphin-0.8.2-orig/src/dolphinview.cpp 2006-12-09 00:00:24.000000000 +0100
++++ dolphin-0.8.2-new/src/dolphinview.cpp 2007-03-10 23:25:15.000000000 +0100
+@@ -705,6 +705,27 @@
+ setURL(KURL(localPath));
+ }
+ }
++ else if (fileItem->isFile()) {
++ // allow to browse through ZIP and tar files
++ KMimeType::Ptr mime = fileItem->mimeTypePtr();
++ if (mime->is("application/x-zip")) {
++ KURL url = fileItem->url();
++ url.setProtocol("zip");
++ setURL(url);
++ }
++ else if (mime->is("application/x-tar") ||
++ mime->is("application/x-tarz") ||
++ mime->is("application/x-tbz") ||
++ mime->is("application/x-tgz") ||
++ mime->is("application/x-tzo")) {
++ KURL url = fileItem->url();
++ url.setProtocol("tar");
++ setURL(url);
++ }
++ else {
++ fileItem->run();
++ }
++ }
+ else {
+ fileItem->run();
+ }
+diff -Naur dolphin-0.8.2-orig/src/urlnavigator.cpp dolphin-0.8.2-new/src/urlnavigator.cpp
+--- dolphin-0.8.2-orig/src/urlnavigator.cpp 2006-11-01 00:07:08.000000000 +0100
++++ dolphin-0.8.2-new/src/urlnavigator.cpp 2007-03-10 23:25:03.000000000 +0100
+@@ -116,6 +116,68 @@
+ void URLNavigator::setURL(const KURL& url)
+ {
+ QString urlStr(url.prettyURL());
++
++ if (url.protocol() == "zip") {
++ bool stillInside = false;
++ if (KMimeType::findByPath(url.url(-1))
++ ->is("application/x-zip")) {
++ stillInside = true;
++ }
++ else {
++ KURL url1 = url.upURL();
++ while (url1 != url1.upURL()) {
++ if (KMimeType::findByPath(url1.url(-1))
++ ->is("application/x-zip")) {
++ stillInside = true;
++ break;
++ }
++ url1 = url1.upURL();
++ }
++ }
++ if (!stillInside)
++ {
++ // Drop the zip:/ protocol since we are not in the zip anymore
++ urlStr = url.path();
++ }
++ }
++ else if (url.protocol() == "tar")
++ {
++ bool stillInside = false;
++ KMimeType::Ptr kmp =
++ KMimeType::findByPath(url.url(-1));
++ if (kmp->is("application/x-tar") ||
++ kmp->is("application/x-tarz") ||
++ kmp->is("application/x-tbz") ||
++ kmp->is("application/x-tgz") ||
++ kmp->is("application/x-tzo")
++ ) {
++ stillInside = true;
++ }
++ else {
++ KURL url1 = url.upURL();
++ while (url1 != url1.upURL()) {
++ KMimeType::Ptr kmp =
++ KMimeType::findByPath(url1.url(-1));
++ if (kmp->is("application/x-tar") ||
++ kmp->is("application/x-tarz") ||
++ kmp->is("application/x-tbz") ||
++ kmp->is("application/x-tgz") ||
++ kmp->is("application/x-tzo")
++ ) {
++ stillInside = true;
++ break;
++ }
++ url1 = url1.upURL();
++ }
++ }
++ if (!stillInside)
++ {
++ // Drop the tar:/ protocol since we are not in the tar anymore
++ urlStr = url.path();
++ }
++ }
++
++
+ if (urlStr.at(0) == '~') {
+ // replace '~' by the home directory
+ urlStr.remove(0, 1);