#define kernel KMKernel::self()
to
#define kmkernel KMKernel::self()
because 'kernel' was a much to general term. We really shouldn't repeat the mistakes of the X developers.
I noticed this problem when I played around with KImageEffects. kimageeffects.h contains 'kernel' as parameter of some methods and so the compilation had to fail. We won't need KImageEffects in the near future, but at least we are now prepared and a clash with another 'kernel' can't happen anymore.
svn path=/trunk/kdepim/; revision=252621
Implement KMSearchPattern::requiresBody for more efficient filtering.
Fix a crash when double searching, had a small conflict there.
svn path=/trunk/kdepim/; revision=251452
classes namely KMSearchRuleString, for searches on headers and message
body strings and such, KMSearchRuleNumerical, for searches against age
and such and KMSearchRuleStatus for searching for status. Instances of
these classes are created via a set of static factory methods called
createInstance(), createInstanceFromConfig() etc which parse the pseudo
header specified by the user and instantiate the proper class
o port all users of KMSearchRule to using the createInstance() scheme
o add a <status> pseudo header to the search dialog, so searching for
status is now possible. The status has to be entered into the entry
widget, just like for all other search types, which is suboptimal, as
the set of possible status the user can select is fixed. A drop down
would be much better, but that needs more work. For now the user has
to spell the status correctly. :)
svn path=/trunk/kdepim/; revision=244340
Especially protocol() == "imap". Note that using ssl completely breaks those
checks then as the protocol is then "imaps". Also the string compares
are suboptimal there - use folderType() == KMFolderTypeSomeType.
svn path=/trunk/kdepim/; revision=238868
1) Remove the limitation that a message can have only one status at a time.
2) Implement watch/ignore thread via message status flags.
ad 1:
- Message status is now kept as a bitfield, which means a message can now be
for example replied and forwarded as well as important at the same time.
- To keep the index format backward compatible and make the transition
painless, I've added a new index entry and added code to transfer the old
into the new format. That means that upgrading users should not notice
anything.
- I've tried to keep as much behavior as possible unchanged with regard to
what flag disables what other flag etc. There are two groups of flags:
read/unread/new/old influence each other, which means a message cannot be
new and read at the same time, for example, while the second group, namely
important, sent, queued, replied, and forwarded are toggled individually.
- Toggling a thread sets the messages status to the inverse of that of the
parent, which means that if you have a thread with some mails marked as
important and some not, the status is set according to that of the parent.
- Status is now kept when moving mails between folders in the same imap
account as well as between imap accounts.
ad 2:
- Watch and ignore are mutually exclusive, which means ignoring a thread
unsets its watched flag and the other way around.
- When sorting by status watched threads are at the top, ignored at the
bottom.
- Watch and ignore propagate via threading, which means that if a message
is threaded below a watched one, it becomes watched. Same for ignore.
- Moving a single mail out of a watched thread results in a new watched
thread of size 1 :)
- Similarly watch and ignore are possible on individual mail (threads
to be).
- Watching a thread does not currently mark new mails as important, nor
does ignoring delete new mails in the thread. These are possible
extensions, though, if we think them sensible.
svn path=/trunk/kdepim/; revision=235595
valgrind. I wonder if he tells his dog: "Waffles, I suspect you might be
leaking, I shall run you under valgrind when we get home."
svn path=/trunk/kdepim/; revision=235383
search
o fix display of message size in search folders for searches on imap folders
o fix getMsgString for imap folders
svn path=/trunk/kdepim/; revision=225471
This is a set of changes that is well test by myself and others.
The following bug fixes amongst others are included:
Compilation fix: the certificate dialog now compiles
Mjr bugfix: Prevent mail loss when kmail crashes while editing a
drafts message
Mjr bugfix: Fix erratic folder changing when clicking on the folder
tree
Mjr bugfix: Prevent mail loss when applying filters
The follow features have been implemented:
* KMail is now a KPart and can be embedded in the Kontact/Kaplan
container applications along with other KDE PIM applications.
* Remove duplicates function for removing duplicate messages in
a folder.
* Messages can be dragged and dropped on a composer window to
add those messages as attachments.
* Deletion in threaded mode is improved, child messages will no
longer be scattered when a parent is deleted.
* Multiple messages can now be selected in the search dialog.
* New context menu in the search dialog with Move, Copy, Reply
etc. actions for operating on selected messages.
* Search criteria in the search dialog now supports more types
of rules and a variable number of rules.
* Faster searching of large messsages.
* 'Search Folders' which are a KMail folder that stores a search
expression and is dynamically updated (also known as virtual
folders).
* The separate window for reading mail has a context menu with
Reply, Copy etc. actions for operating on the message
displayed.
* The separate window for reading mail has a tool bar.
* Startup of KMail is faster.
* Switching between folders is faster.
* The contents of all composer windows are saved to disk on
composer window creation and then periodically saved to
prevent mail loss in the result of a system crash.
* The state of KMail folders is saved to disk periodically to
prevent status information loss in the result of a system
crash.
Note after start KMail switching to folders for the first time will
slow as the format of the .sorted file has changed.
Enjoy!
svn path=/trunk/kdenetwork/kmail/; revision=195825
for me the "crash on reply" and "forward message crash" bugs and people
on IRC have been insisting on committing it. So yeah, asynchronous message
handling in KMail is in!!! May the God of Coding have mercy on us...
svn path=/trunk/kdenetwork/kmail/; revision=193386
merged the Makefile.am and add all files that were added in make_it_cool
to get smaller diffs [most of them not yet compiled :]
svn path=/trunk/kdenetwork/kmail/; revision=191335