[RCD] Threaded message listing implementation

Chris January chris at atomice.net
Mon Mar 16 13:50:55 CET 2009

> So as I began to investigate the sorting of threads by the date of the most
> recent message in a thread rather than the thread's root message, I
> discovered that there is beginning to be support for this at the IMAP
> server level:
> http://tools.ietf.org/html/draft-ietf-morg-inthread-00

The Dovecot support for X-REFERENCES2 is very useful to know about!

> anyone else has more information on this.  Here are the patches:
> http://code.nkinka.de/gitweb?p=roundcube.git;a=commitdiff;h=61d007a3c6867766391afb7c5d02b85ff44df1e8
> http://code.nkinka.de/gitweb?p=roundcube.git;a=commitdiff;h=945604dcb6805965ed498e690b003770fa619210
> http://code.nkinka.de/gitweb?p=roundcube.git;a=commitdiff;h=8018757b75262d009bc6611be76bf4696d549caa

May I ask what is the rationale behind the second patch?

I took a look at all three patches and the follow up. I think the idea
of a 'default' sort order is a good one. I have been testing the
threading implementation with a 70,000+ message mailbox and having the
option to set the sort order to 'default' should improve load times
even if threading is turned off.
I would like to integrate this with the GUI so that, e.g. clicking the
Date column toggles between ascending, descending and 'default' (since
the default sort order sorts by date in some fashion).
I also saw you had tweaked which messages are expanded by default. My
personal preference is to use a slightly different algorithm, namely:
unread = collapsed
read + any descendants unread = expanded
read + all descendants read = collapsed
This assumes the threads you are interested in are the ones you have
read. If any new replies are added to those threads you want to see
them. However threads where you have not read the root of are probably
not interesting so shouldn't be expanded.

List info: http://lists.roundcube.net/dev/

More information about the Dev mailing list