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
file is. This prevents the ids file from being rewritten for every
folder that is opened.
Second diff enables KMMsgDict the dict of serial number to handle
duplicate serial numbers, which can happen in the case of ids file
corruption. In my case somehow an IMAP folder and my outbox ended up
with duplicate serial numbers. This caused my KMail to crash as I
locally I've kept the QASSERT's I recently added to kmreaderwin.cpp.
svn path=/trunk/kdenetwork/kmail/; revision=169373
Activate them via View-menu or rmb-menu from the tree-header.
Changed the qpopup for the folder-context-menu to kpopup to be consistent with the rest.
svn path=/trunk/kdenetwork/kmail/; revision=153547
- new base class ConfigManager with commit/rollback functionality forced on
subclasses through pure virtuals.
All new managers should inherit this and implement the branching bahaviour
of IdentityManager, so that the configuredialog can work on the branch while
the rest of KMail sees only the "old" configuration.
- new IdentityManager, implementing the ConfigManager for KMIdentity's.
- new Signature class abstracting the signature processing.
- new structure for identities in kmailrc:
o upgrade-signature.pl: Turns the old signature-related config keys into
a sigtype/value scheme.
o kmail-upd-identities.pl: Removes all groups for identities not listed in
[Identity]/IdentityList.
Renames all remaining groups to [Identity #n],
with n starting a 0.
Saves the name of the default identity in
[General]/Default Identity
This adds several new technologies to KMail/KMKernel:
- from the new Signature handling: A service to non-QObjects to collect
StdOut and/or StdErr of KProcess (-derived) classes for them.
- from IdentityManager: A service to ConfigManagers requesting a sync of
kapp->config(). The requests get delayed, so multiple requests can
be serviced with a single kapp->config()->sync().
- from ConfigManager: A service to other ConfigManagers and to GUI elements
that wish to be notified of any change in a particular ConfigManager
implementation: Whenever a commit() changes something, the changed() signal
is emitted.
Included is also a fix for the problem of "no stdin at execute filter"
and the introduction of IdentityCombo.
svn path=/trunk/kdenetwork/kmail/; revision=148825
no longer overwritten by the flags on the server and checking for new mails
only reports the really new mails.
svn path=/trunk/kdenetwork/kmail/; revision=130054
it has always an older date than the index, even if the user changed the clock
or lets KMail running, while it switches itself from daylight savings time to
normal time.
svn path=/trunk/kdenetwork/kmail/; revision=129370
- Show number of queued messages in outbox
- Open thread if it contains new, unread or _important_ messages
svn path=/trunk/kdenetwork/kmail/; revision=128438
- Slightly better support for broken mails without charset header
Thanks to Takumi ASAKI <asataku@osk3.3web.ne.jp>
svn path=/trunk/kdenetwork/kmail/; revision=127974