|
*** Current status of THREADS implementation ***
|
|
|
CHANGES IN RELATION TO ORIGINAL PATCH
|
- don't add nested messages into selection on collapse if parent message
|
is in selection
|
- some changes in messages highlighting
|
- re-written all changes in rcube_imap.php
|
- temporary removed threads caching (see TODO)
|
- use depth=0 for roots
|
- thread expand state is not stored anywhere
|
- removed imap_thread_algorithm option, we're using the best algorithm
|
supported by server and implement REFS sorting in Roundcube
|
- use underlined subject for root with unread children (icon is still supported)
|
- on deleting messages the whole list isn't refreshed
|
- added 'expand unread' button
|
|
TODO (must have):
|
- threads caching
|
- updating threaded message list on message delete
|
- don't reload messages list on check_recent
|
|
KNOWN ISSUES:
|
- on new message (check_recent) the whole list is reloaded
|
- css issues on IE6
|
|
TODO (other):
|
- performance: fetching all messages for list in "expand all" state only,
|
if "expand all" is disabled we should fetch only root messages and fetch
|
children on-demand (on expand button click),
|
Notice: this is not so simple, because we need to fetch children
|
to set "unread_children", but we can fetch only flags instead of
|
all headers for each child
|
- button in #listcontrols to mark all messages in current thread (with selected
|
root or child message),
|
- icons for thread tree structure
|
|
TODO (by the way):
|
- use jQuery.inArray instead of find_in_array() (common.js)
|