[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [Bug 73758] Filter rules do not act on incoming messages in IMAP
From: Don Sanders <don () sanders ! org>
Date: 2005-04-29 2:13:57
Message-ID: 20050429021357.17029.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
http://bugs.kde.org/show_bug.cgi?id=73758
don sanders org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Additional Comments From don sanders org 2005-04-29 04:13 -------
CVS commit by sanders:
Enhance the Kmail filtering system so that filters can be applied to
incoming messages from IMAP accounts, that is messages that are delivered
into an IMAP inbox folder.
Sundry details:
I've modified these files:
kmfilterdlg.h kmfilterdlg.cpp
To add the advanced tab that allows per account filters
kmfilter.h kmfilter.cpp
I've added some new functions to KMFilter
setApplicability( AccountType )
AccountType applicability()
setApplyOnAccount( uint id, bool aApply )
bool applyOnAccount( uint id )
and an enum
enum AccountType { All, ButImap, Checked }
kmfiltermgr.h kmfiltermgr.cpp
I modified KMFilterMgr::process
to take two optional parameters
bool account = false
uint accountId = 0
and changed the implementation so that when these
params are set per account filtering is applied.
kmaccount.cpp
Trivially to use the new per account filtering.
kmacctimap.h kmacctimap.cpp
For 3 main reasons
1) In the case (it checks) that a filter applies to this
imap account, then incoming mails headers are
downloaded when mail checking occurs. Rather than waiting
until the folder is selected in the GUI.
Because it's really silly to have to select the inbox
folder to manually force filtering to kick in.
2) To load/save a list of unfiltered messages in the
constructor/destructor respectively.
3) To filter messages (I've sort of duplicated a little code
from kmheaders.cpp for this, my apologies).
kmfolderimap.cpp
1) To tell mAccount to filter new mail as the headers arrive.
This is basically the patch I've sent to bug:50997 several times and
has been available for testing for some time.
I'll now focus on allowing IMAP folders to be the target of the
Move Into Folder filter action, and less blocking filtering
(useful for piping into a spam tool).
CCMAIL:73758-done bugs kde org
M +1 -1 kmaccount.cpp 1.123
M +123 -1 kmacctimap.cpp 1.194
M +14 -0 kmacctimap.h 1.93
M +65 -2 kmfilter.cpp 1.73
M +44 -0 kmfilter.h 1.35
M +154 -28 kmfilterdlg.cpp 1.122
M +12 -2 kmfilterdlg.h 1.42
M +6 -3 kmfiltermgr.cpp 1.76
M +5 -1 kmfiltermgr.h 1.34
M +5 -0 kmfolderimap.cpp 1.258
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic