summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWulf Krueger <philantrop@gentoo.org>2007-07-10 16:35:11 +0000
committerWulf Krueger <philantrop@gentoo.org>2007-07-10 16:35:11 +0000
commit755f327fb93a6c07d9bf9068bd2e551f9cb3cb0c (patch)
treedcb8e77bd3786a6246cb459063366fd47bd644ba /kde-base/kdepim
parentAdd a binary for ia64, so mark ~ia64. (diff)
downloadgentoo-2-755f327fb93a6c07d9bf9068bd2e551f9cb3cb0c.tar.gz
gentoo-2-755f327fb93a6c07d9bf9068bd2e551f9cb3cb0c.tar.bz2
gentoo-2-755f327fb93a6c07d9bf9068bd2e551f9cb3cb0c.zip
Added a patch to restore KMail's mail filtering capabilities. Fixes bug 180244.
(Portage version: 2.1.3_rc7)
Diffstat (limited to 'kde-base/kdepim')
-rw-r--r--kde-base/kdepim/ChangeLog8
-rw-r--r--kde-base/kdepim/files/digest-kdepim-3.5.7-r23
-rw-r--r--kde-base/kdepim/files/kmail-3.5.7-filters.patch186
-rw-r--r--kde-base/kdepim/kdepim-3.5.7-r2.ebuild56
4 files changed, 252 insertions, 1 deletions
diff --git a/kde-base/kdepim/ChangeLog b/kde-base/kdepim/ChangeLog
index 6c6715380658..354c1c638019 100644
--- a/kde-base/kdepim/ChangeLog
+++ b/kde-base/kdepim/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for kde-base/kdepim
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kdepim/ChangeLog,v 1.274 2007/07/01 13:34:11 philantrop Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdepim/ChangeLog,v 1.275 2007/07/10 16:35:11 philantrop Exp $
+
+*kdepim-3.5.7-r2 (10 Jul 2007)
+
+ 10 Jul 2007; Wulf C. Krueger <philantrop@gentoo.org>
+ +files/kmail-3.5.7-filters.patch, +kdepim-3.5.7-r2.ebuild:
+ Added a patch to restore KMail's mail filtering capabilities. Fixes bug 180244.
*kdepim-3.5.7-r1 (01 Jul 2007)
diff --git a/kde-base/kdepim/files/digest-kdepim-3.5.7-r2 b/kde-base/kdepim/files/digest-kdepim-3.5.7-r2
new file mode 100644
index 000000000000..01737c61da89
--- /dev/null
+++ b/kde-base/kdepim/files/digest-kdepim-3.5.7-r2
@@ -0,0 +1,3 @@
+MD5 8571db6dcf4168614c96bb72c493f931 kdepim-3.5.7.tar.bz2 14166061
+RMD160 14c05d4620abf1eb5421ad434dc63f037069e930 kdepim-3.5.7.tar.bz2 14166061
+SHA256 9d981d372f1822662e102b6f84f046e4df771641fc4d041aae81b8fafd47b32e kdepim-3.5.7.tar.bz2 14166061
diff --git a/kde-base/kdepim/files/kmail-3.5.7-filters.patch b/kde-base/kdepim/files/kmail-3.5.7-filters.patch
new file mode 100644
index 000000000000..d808de614149
--- /dev/null
+++ b/kde-base/kdepim/files/kmail-3.5.7-filters.patch
@@ -0,0 +1,186 @@
+diff -Naur kmail-3.5.7.orig/kmail/folderstorage.cpp kmail-3.5.7/kmail/folderstorage.cpp
+--- kmail-3.5.7.orig/kmail/folderstorage.cpp 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/folderstorage.cpp 2007-07-09 23:01:26.000000000 +0200
+@@ -84,8 +84,6 @@
+
+ mHasChildren = HasNoChildren;
+ mContentsType = KMail::ContentsTypeMail;
+-
+- connect(this, SIGNAL(closed(KMFolder*)), mFolder, SIGNAL(closed()));
+ }
+
+ //-----------------------------------------------------------------------------
+@@ -629,7 +627,7 @@
+ QString oldLoc, oldIndexLoc, oldIdsLoc, newLoc, newIndexLoc, newIdsLoc;
+ QString oldSubDirLoc, newSubDirLoc;
+ QString oldName;
+- int rc=0;
++ int rc=0, openCount=mOpenCount;
+ KMFolderDir *oldParent;
+
+ assert(!newName.isEmpty());
+@@ -699,6 +697,11 @@
+ }
+ }
+
++ if (openCount > 0)
++ {
++ open("rename");
++ mOpenCount = openCount;
++ }
+ writeConfig();
+
+ // delete the old entry as we get two entries with the same ID otherwise
+@@ -708,7 +711,6 @@
+ emit locationChanged( oldLoc, newLoc );
+ emit nameChanged();
+ kmkernel->folderMgr()->contentsChanged();
+- emit closed(folder()); // let the ticket owners regain
+ return rc;
+ }
+
+@@ -736,7 +738,6 @@
+ KConfig* config = KMKernel::config();
+ config->deleteGroup( "Folder-" + folder()->idString() );
+
+- emit closed(folder());
+ emit removed(folder(), (rc ? false : true));
+ }
+
+@@ -744,6 +745,8 @@
+ //-----------------------------------------------------------------------------
+ int FolderStorage::expunge()
+ {
++ int openCount = mOpenCount;
++
+ assert(!folder()->name().isEmpty());
+
+ clearIndex( true, mExportsSernums ); // delete and remove from dict, if needed
+@@ -761,6 +764,12 @@
+ mDirty = false;
+ needsCompact = false; //we're cleared and truncated no need to compact
+
++ if (openCount > 0)
++ {
++ open("expunge");
++ mOpenCount = openCount;
++ }
++
+ mUnreadMsgs = 0;
+ mTotalMsgs = 0;
+ emit numUnreadMsgsChanged( folder() );
+diff -Naur kmail-3.5.7.orig/kmail/folderstorage.h kmail-3.5.7/kmail/folderstorage.h
+--- kmail-3.5.7.orig/kmail/folderstorage.h 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/folderstorage.h 2007-07-09 23:01:26.000000000 +0200
+@@ -418,9 +418,6 @@
+ emmitted first. */
+ void expunged( KMFolder* );
+
+- /** Emitted when the folder was closed and ticket owners have to reopen */
+- void closed( KMFolder* );
+-
+ /** Emitted when the serial numbers of this folder were invalidated. */
+ void invalidated( KMFolder * );
+
+diff -Naur kmail-3.5.7.orig/kmail/kmfolder.cpp kmail-3.5.7/kmail/kmfolder.cpp
+--- kmail-3.5.7.orig/kmail/kmfolder.cpp 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/kmfolder.cpp 2007-07-09 23:01:26.000000000 +0200
+@@ -476,7 +476,6 @@
+
+ void KMFolder::close( const char *owner, bool force )
+ {
+- // do not emit closed() in here - as this would regain too early
+ mStorage->close( owner, force );
+ }
+
+diff -Naur kmail-3.5.7.orig/kmail/kmfolder.h kmail-3.5.7/kmail/kmfolder.h
+--- kmail-3.5.7.orig/kmail/kmfolder.h 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/kmfolder.h 2007-07-09 23:01:26.000000000 +0200
+@@ -537,10 +537,6 @@
+ folder changed. */
+ void changed();
+
+- /** Emitted when the folder is closed for real - ticket holders should
+- * discard any messages */
+- void closed();
+-
+ /** Emitted when the contents of a folder have been cleared
+ (new search in a search folder, for example) */
+ void cleared();
+diff -Naur kmail-3.5.7.orig/kmail/kmfoldermbox.cpp kmail-3.5.7/kmail/kmfoldermbox.cpp
+--- kmail-3.5.7.orig/kmail/kmfoldermbox.cpp 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/kmfoldermbox.cpp 2007-07-09 23:01:26.000000000 +0200
+@@ -264,7 +264,7 @@
+ if (mOpenCount <= 0 || !mStream) { mOpenCount = 0; return; }
+ if (mOpenCount > 0) mOpenCount--;
+ if (mOpenCount > 0 && !aForced) { assert(mStream); return; }
+-
++
+ #if 0 // removed hack that prevented closing system folders (see kmail-devel discussion about mail expiring)
+ if ( (folder() != kmkernel->inboxFolder())
+ && folder()->isSystemFolder() && !aForced )
+@@ -1246,11 +1246,17 @@
+ {
+ // This is called only when the user explicitely requests compaction,
+ // so we don't check needsCompact.
++ int openCount = mOpenCount;
+
+ KMail::MboxCompactionJob* job = new KMail::MboxCompactionJob( folder(), true /*immediate*/ );
+ int rc = job->executeNow( silent );
+ // Note that job autodeletes itself.
+
++ if (openCount > 0)
++ {
++ open("mboxcompact");
++ mOpenCount = openCount;
++ }
+ // If this is the current folder, the changed signal will ultimately call
+ // KMHeaders::setFolderInfoStatus which will override the message, so save/restore it
+ QString statusMsg = BroadcastStatus::instance()->statusMsg();
+diff -Naur kmail-3.5.7.orig/kmail/kmheaders.cpp kmail-3.5.7/kmail/kmheaders.cpp
+--- kmail-3.5.7.orig/kmail/kmheaders.cpp 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/kmheaders.cpp 2007-07-09 23:01:26.000000000 +0200
+@@ -673,8 +673,6 @@
+ this, SLOT(folderCleared()));
+ disconnect(mFolder, SIGNAL(expunged( KMFolder* )),
+ this, SLOT(folderCleared()));
+- disconnect(mFolder, SIGNAL(closed()),
+- this, SLOT(folderClosed()));
+ disconnect( mFolder, SIGNAL( statusMsg( const QString& ) ),
+ BroadcastStatus::instance(), SLOT( setStatusMsg( const QString& ) ) );
+ disconnect(mFolder, SIGNAL(viewConfigChanged()), this, SLOT(reset()));
+@@ -708,8 +706,6 @@
+ this, SLOT(folderCleared()));
+ connect(mFolder, SIGNAL(expunged( KMFolder* )),
+ this, SLOT(folderCleared()));
+- connect(mFolder, SIGNAL(closed()),
+- this, SLOT(folderClosed()));
+ connect(mFolder, SIGNAL(statusMsg(const QString&)),
+ BroadcastStatus::instance(), SLOT( setStatusMsg( const QString& ) ) );
+ connect(mFolder, SIGNAL(numUnreadMsgsChanged(KMFolder*)),
+@@ -2565,13 +2561,6 @@
+ emit selected(0);
+ }
+
+-
+-void KMHeaders::folderClosed()
+-{
+- mFolder->open( "kmheaders" );
+- folderCleared();
+-}
+-
+ bool KMHeaders::writeSortOrder()
+ {
+ QString sortFile = KMAIL_SORT_FILE(mFolder);
+diff -Naur kmail-3.5.7.orig/kmail/kmheaders.h kmail-3.5.7/kmail/kmheaders.h
+--- kmail-3.5.7.orig/kmail/kmheaders.h 2007-05-14 09:54:39.000000000 +0200
++++ kmail-3.5.7/kmail/kmheaders.h 2007-07-09 23:01:26.000000000 +0200
+@@ -221,8 +221,6 @@
+ void msgChanged();
+ /** For when the folder has been cleared */
+ void folderCleared();
+- /** For when the folder has been cleared */
+- void folderClosed();
+ /** For when the message with the given message id has been added to a folder */
+ void msgAdded(int);
+ /** For when the message with the given id has been removed for a folder */
diff --git a/kde-base/kdepim/kdepim-3.5.7-r2.ebuild b/kde-base/kdepim/kdepim-3.5.7-r2.ebuild
new file mode 100644
index 000000000000..a9c5aefdf650
--- /dev/null
+++ b/kde-base/kdepim/kdepim-3.5.7-r2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kdepim/kdepim-3.5.7-r2.ebuild,v 1.1 2007/07/10 16:35:11 philantrop Exp $
+
+inherit kde-dist
+
+DESCRIPTION="KDE PIM (Personal Information Management) applications: KOrganizer, KMail, KNode,..."
+
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="crypt gnokii"
+
+RESTRICT="test"
+
+# We use GnuPG 1.4.x for OpenPGP and 1.9 (via gpgme) for s/mime as upstream advises.
+DEPEND="~kde-base/kdebase-${PV}
+ >=dev-libs/cyrus-sasl-2
+ gnokii? ( app-mobilephone/gnokii )
+ crypt? ( >=app-crypt/gpgme-1.1.2-r1
+ || ( >=app-crypt/gnupg-2.0.1-r1 <app-crypt/gnupg-1.9 ) )
+ x11-libs/libXScrnSaver
+ app-pda/libopensync"
+# Requires pilot-link-0.12.0
+# pda? ( >=app-pda/pilot-link-0.12.0 dev-libs/libmal )
+
+RDEPEND="${DEPEND}
+ crypt? ( app-crypt/pinentry )"
+
+DEPEND="${DEPEND}
+ x11-proto/scrnsaverproto"
+
+PATCHES="${FILESDIR}/akregator-3.5.7-customcolors.diff
+ ${FILESDIR}/kmail-3.5.7-filters.patch"
+
+src_unpack() {
+ kde_src_unpack
+ # Call Qt 3 designer
+ sed -i -e "s:\"designer\":\"${QTDIR}/bin/designer\":g" "${S}"/libkdepim/kcmdesignerfields.cpp || die "sed failed"
+
+ # disabling tests, see bug #164038 and bug #164097
+ sed -e "s:SUBDIRS = libical versit tests:SUBDIRS = libical versit:" \
+ -i libkcal/Makefile.am || die "sed failed" || die "sed failed"
+# sed -e "s:SUBDIRS = . plugins test:SUBDIRS = . plugins:" \
+# -i kitchensync/libkonnector2/Makefile.am || die "sed failed"
+# sed -e "s:SUBDIRS = . tests test:SUBDIRS = .:" \
+# -i kitchensync/libksync/Makefile.am || die "sed failed"
+}
+
+src_compile() {
+ local myconf="--with-sasl $(use_with gnokii)"
+ use crypt && myconf="${myconf} --with-gpg=/usr/bin/gpg"
+
+ # use pda || DO_NOT_COMPILE="${DO_NOT_COMPILE} kpilot"
+ DO_NOT_COMPILE="${DO_NOT_COMPILE} kpilot"
+
+ kde_src_compile
+}