This brings a reworked folder tree and and a new message list, which is much more powerful than the old one.
New features include grouping, multiline items and the ability to customize just about everything of the look of the message list.
Also, we have a tabbed interface for opening more than one folder at once now.
An important aspect of the new message list is that drawing speed is now fast again (there was a regression in Q3ListView that
made huge folders a real pain to navigate, reading commit folders was not a nice thing to do).
There are probably more things which I forgot to list here.
Also, this is big step forward in getting rid of Qt3Support in KMail, now just some tiny bits are left.
Many thanks to SoC student Szymon Stefanek for his awesome work on his project! I can't stress enough how great this
achivment is. He even added very good API documentation to his classes :)
This requires the lastest version of qt-copy, otherwise you'll get mysterious crashes in Qt painting code from time to time.
We hope that this patch will be added to the next Qt 4.4.x version.
And finally, this merge also brings many regressions, which is not unnatural for such a big change.
In the remaining time before the KDE 4.2 release, we'll have to work on those to get it polished and regression-free.
Help here is always needed, and is a good opportunity to start working on KMail, since many regressions are low hanging fruit.
It also means the message list and the folder tree need a bit of testing.
If you find bugs, report them under the "new message list" and "new folder tree" component of the bug tracker, thanks.
I also plan to setup a wiki page with known regressions.
CCMAIL: kde-pim@kde.org
GUI:
CCBUG: 117808
BUG: 163469
FEATURE: 18170
FEATURE: 32400
FEATURE: 42107
FEATURE: 45526
FEATURE: 81272
FEATURE: 90142
FEATURE: 107450
(and probably many others)
svn path=/trunk/KDE/kdepim/; revision=881321
Note: The remaining issues are false positives. They cannot be changed to ' '
as the called function expects a const char*.
svn path=/trunk/KDE/kdepim/; revision=861369
svn+ssh://tmcguire@svn.kde.org/home/kde/branches/kdepim/enterprise4/kdepim
................
r860059 | vkrause | 2008-09-11 22:43:32 +0200 (Thu, 11 Sep 2008) | 21 lines
Merged revisions 859561,860036 via svnmerge from
https://vkrause@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim
........
r859561 | vkrause | 2008-09-10 19:10:02 +0200 (Wed, 10 Sep 2008) | 5 lines
Reload the folder tree if a folder type changes, we have a few folder
hiding options that depend on it.
Kolab issue 2792 (part 1)
........
r860036 | vkrause | 2008-09-11 22:06:02 +0200 (Thu, 11 Sep 2008) | 7 lines
Reload the folder tree on changes to no content state of any folder,
visible or hidden. This ensures that previous no content and thus
possibly hidden folders are shown correctly after the owner provides us
with read access on such a folder.
Kolab issue 2792 (part 2)
........
................
svn path=/trunk/KDE/kdepim/; revision=860257
https://vkrause@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim
........
r859561 | vkrause | 2008-09-10 19:10:02 +0200 (Wed, 10 Sep 2008) | 5 lines
Reload the folder tree if a folder type changes, we have a few folder
hiding options that depend on it.
Kolab issue 2792 (part 1)
........
r860036 | vkrause | 2008-09-11 22:06:02 +0200 (Thu, 11 Sep 2008) | 7 lines
Reload the folder tree on changes to no content state of any folder,
visible or hidden. This ensures that previous no content and thus
possibly hidden folders are shown correctly after the owner provides us
with read access on such a folder.
Kolab issue 2792 (part 2)
........
svn path=/branches/kdepim/enterprise4/kdepim/; revision=860059
svn+ssh://tmcguire@svn.kde.org/home/kde/branches/kdepim/enterprise4/kdepim
................
r854399 | vkrause | 2008-08-29 15:04:19 +0200 (Fri, 29 Aug 2008) | 13 lines
Merged revisions 850513 via svnmerge from
https://vkrause@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim
........
r850513 | vkrause | 2008-08-21 19:11:57 +0200 (Thu, 21 Aug 2008) | 6 lines
Allow deletion of message only if the IMAP ACLs allow it. The current
code assumed that deletion was not possible iff a folder is read-only,
which is too simple for IMAP.
Kolab issue 2954
........
................
svn path=/trunk/KDE/kdepim/; revision=855221
https://vkrause@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim
........
r850513 | vkrause | 2008-08-21 19:11:57 +0200 (Thu, 21 Aug 2008) | 6 lines
Allow deletion of message only if the IMAP ACLs allow it. The current
code assumed that deletion was not possible iff a folder is read-only,
which is too simple for IMAP.
Kolab issue 2954
........
svn path=/branches/kdepim/enterprise4/kdepim/; revision=854399
https://vkrause@svn.kde.org/home/kde/branches/kdepim/enterprise4/kdepim
........
r829126 | vkrause | 2008-07-07 18:28:17 +0200 (Mon, 07 Jul 2008) | 11 lines
Close the folder before we unregister from the message dict.
This fixes the .index.db file being newer than the corresponding
.index.ids file, causing the latter being detected as outdated on the
next startup. In this case message wouldn't have a serial number, which
the sqlite backend poorly recovers from, causing apparent mail loss
(fixable by rebuilding the folder index). And to make it even more
confusing, this only happends for new DIMAP folders that have been
synced but not entered yet before shutting down KMail.
Kolab issue 2816
........
svn path=/trunk/KDE/kdepim/; revision=829189
This fixes the .index.db file being newer than the corresponding
.index.ids file, causing the latter being detected as outdated on the
next startup. In this case message wouldn't have a serial number, which
the sqlite backend poorly recovers from, causing apparent mail loss
(fixable by rebuilding the folder index). And to make it even more
confusing, this only happends for new DIMAP folders that have been
synced but not entered yet before shutting down KMail.
Kolab issue 2816
svn path=/branches/kdepim/enterprise4/kdepim/; revision=829126
from
/branches/work/kmail-nommap (r799390..804487)
/branches/work/kdepim-nommap/kmail (r804484..804960)
The SQLite mode is currently enabled only on Windows (by KMAIL_SQLITE_INDEX define),
so on !Windows, the code for standard 'mmap' mode is compiled.
CCMAIL:kde-pim@kde.org
svn path=/trunk/KDE/kdepim/; revision=805075
FolderStorage::canAccess() now returns bool,
and thus also the same method in KMFolderSearch, KMFolderMaildir,
KMFolderMbox, KMFolder
- Maildir filenames: use '!' character separator instead of ':' for windows
(KMAIL_MAILDIR_FNAME_SEPARATOR macro),
as it is impossible to create a file containing ':' (regardless of the
used filesystem - it is a property of the FS API itself)
- KMFolderMaildir::canAccess() use QFileInfo instead of access() - solves
problem with undefined
X_OK flag on windows and is still enough efficient as there are no hundreds
of dirs in a maildir
- KMFolderIndex::recreateIndex() now returns bool
- KMFolderDir::reload() simplified
svn path=/trunk/KDE/kdepim/; revision=773959
- The default identity is no longer 0, adopt to that
- To each account, add a new "Use Default Identity" checkbox. If it is checked,
the global default identity will be used. This way, changing the global default
identity actually changes the account identities as well.
svn path=/trunk/KDE/kdepim/; revision=772499
svn+ssh://pradeepto@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim
........
r739135 | tilladam | 2007-11-20 21:30:43 +0530 (Tue, 20 Nov 2007) | 6 lines
Add the ability to associate an identity with an account, such that that
identity is prefered when composing/replying etc, while in a folder of that
account. Folder-specific identities act as an override.
Prokde35-z Item 26
........
svn path=/trunk/KDE/kdepim/; revision=768464
svn+ssh://tilladam@svn.kde.org/home/kde/branches/KDE/3.5/kdepim
........
r650963 | winterz | 2007-04-06 00:51:52 +0200 (Fri, 06 Apr 2007) | 5 lines
merge SVN commit 647870 by coolo:
do not munge with open counts, but simply close and let
ticket owners reopen on closed( ) signal
........
svn path=/branches/kdepim/enterprise/kdepim/; revision=766769
were false positives.
There is one warning left, about slotInfoMessage
in QuotaJobs::GetQuotarootjo. This seems to be
real, as neither that slot nor the signal
connected to that slot seem to exist with that
signature.
It would be nice if someone with IMAP knowledge could
fix that.
svn path=/trunk/KDE/kdepim/; revision=747352
identity is prefered when composing/replying etc, while in a folder of that
account. Folder-specific identities act as an override.
Prokde35-z Item 26
svn path=/branches/kdepim/enterprise/kdepim/; revision=739135
* fix for kolab issue 1882 (Crash after reply to a revoked mail):
The storage needs to be open before remove is called, otherwise
it will not unregister the corresponding serial numbers from
the message dict, since its message list is empty, and the .ids
file contents are not loaded. That can lead to lookups in the
dict returning stale pointers to the folder later.
svn path=/branches/KDE/3.5/kdepim/; revision=702345
SVN commit 700851 by moenicke:
* fix for kolab issue 1882 (Crash after reply to a revoked mail):
The storage needs to be open before remove is called, otherwise
it will not unregister the corresponding serial numbers from
the message dict, since its message list is empty, and the .ids
file contents are not loaded. That can lead to lookups in the
dict returning stale pointers to the folder later.
svn path=/trunk/KDE/kdepim/; revision=700858
The storage needs to be open before remove is called, otherwise
it will not unregister the corresponding serial numbers from
the message dict, since its message list is empty, and the .ids
file contents are not loaded. That can lead to lookups in the
dict returning stale pointers to the folder later.
svn path=/branches/kdepim/enterprise/kdepim/; revision=700851
When a folder has the 'default identity' and the user changes the default identity in the config,
then the identity of that folder changes as well.
This prevents confusing situation.
svn path=/trunk/KDE/kdepim/; revision=697489
for the new kDebug/kError/kWarning/kFatal syntax.
You can use the following command to find 'old' code:
egrep -r -A 5 '(kDebug|kError|kWarning|kFatal).*' * | grep -v ".svn" | grep "<< *endl;"
svn path=/trunk/KDE/kdepim/; revision=695781
keeping the msginfo pointer around in the message object, and restoring it on
unGet. Should help with a whole class of crashes around filtering, searching
etc. Original patch by Ingo and Andreas, with some fixes and memleak plugs
in corner cases by me. We'll testdrive this a while in enterprise branch, let's
see how it behaves.
CCMAIL: a.gungl@gmx.de
CCMAIL: ingo@kde.org
svn path=/branches/kdepim/enterprise/kdepim/; revision=694327
This fixes things like the new message from template menu not working.
It will, however, only work for newly created folders, old configs will not be updated.
This also reveals a deeper problem: If the user changes the default identity, all
folder identities still use the old identity. The only way to fix this I can think
of is to add a new checkbox to the folder properties dialog which says something
like 'use default identity'.
Or does anybody have a better idea?
svn path=/trunk/KDE/kdepim/; revision=691877
color for the folder name, to help improve the usability of working
with quota'd folders.
Resolves kolab merge item 22. Forward port of enterprise commits:
669156, 671804, 677689, 680527
svn path=/trunk/KDE/kdepim/; revision=691345
- adjust includes and link rules
- delete the libraries from this module
- remove obsolete collectingprocess and configmanager
svn path=/trunk/KDE/kdepim/; revision=682059
kmail. Add the ability to use a configurable color for the
folder name and size when it is close to a configurable quota
threshold (provided the folder has quota info in the first
place). Implement size retrieval for mbox and maildir storage.
(prokde35 w1-6)
svn path=/branches/kdepim/enterprise/kdepim/; revision=669156
SVN commit 627641 by winterz:
Fix for the grave bug "kmail crash when I make a CTRL + J in inbox"
BUGS: 140660
svn path=/branches/kdepim/enterprise/kdepim/; revision=665658
This obviously reintroduces issue661, "forwarding emails can produce bad signature", which will have to be fixed another way once I get more infos about it.
Also remove getMsgString from all folder classes, since it's now unused; getDwString is used instead.
svn path=/branches/kdepim/enterprise/kdepim/; revision=650094