Operations on threads
Closed, ResolvedPublic


Instead of operating on a single message we should operate on the full thread in the maillistview.

There are two approaches to this:

  • Apply the modification on a query. This is already available from sink. There is an additional cost of a query, and we risk inconsitencies in that the query could potentially match other items than what is expected by the user (e.g. due to changes)
  • Track all id's of aggregated values, and then just use that to apply the modification.

The former is probably the easier to implement. The latter is probably what we actually want.

cmollekopf triaged this task as Normal priority.

Current usecases are:

  • mark as read/important
  • move to folder
  • move to trash
cmollekopf moved this task from Backlog to Done on the Kube (0.6) board.Feb 22 2018, 10:22 AM

It's great that actions will be undertaken on threads rather than whole messages.

When a conversation is moved to a folder, will it move all items irrespective of folder or will it leave the sent messages in sent folder and just reference them in the folder as part of the thread?

Good point.
The operation will indeed only apply to the mails in the same folder, which is probably not what we want when moving to trash, but is probably what we want when we move to another folder....

What technically happens is that we list mails in a folder, and "merge" (reduce) them by threadid. We then simply collect all id's that were merged that way, and on any modification apply the modification to all the merged mails.

But then delete should move all messages in same folder in the thread to trash

I think operations should be carried out across the thread fully, such that when:

  1. When a conversation is over to trash - the whole conversation is done so.
  2. When a message is moved to a folder, all components of the thread are done too.

But this is my opinion only. So far what is proposed is what is done in Apple Mail (flags on conversation rather than emails). Apple Mail also only moves emails to thread not in sent folder.

But I guess you'll have to take into consideration what Roundcube Next does too, such that there is consistency across the desktop client and web interface to avoid confusion for users.

cmollekopf moved this task from 0.6 to 0.7 on the Kube board.Jul 5 2018, 3:04 PM
cmollekopf edited projects, added Kube (0.7); removed Kube (0.6).
cmollekopf moved this task from 0.7 to 0.8 on the Kube board.Jul 12 2018, 7:55 AM
cmollekopf edited projects, added Kube (0.8); removed Kube (0.7).
cmollekopf closed this task as Resolved.Jan 29 2019, 10:09 PM
cmollekopf claimed this task.