Skip to content

Use new group metadata for showing lists

Torsten Grote requested to merge 373-slow-contact-list into master

What was supposed to be a minimal change turned into a rather large MR. I did my best to keep things in separate commits, so I can still split this into smaller MRs if desired.

While making use of the new group metadata in the contact and forum list, I noticed some other things in need of improvement to get rid of needing to load all messages:

  • Refactor SharingManager so its events provide message headers that can be used to update list items
  • Add GroupId to conversation items, so the metadata of the respective group can be updated as well when marking the items read
  • Create a very basic ConversationManager so the GroupCount for the various clients can be queried in one go without needing to know all their groups per contact
  • Fix a nasty bug that caused forum and blog invitation to not update their read state
  • Fix some bugs related to displaying the forum list with proper unread count

Some casual measurements with just a few contacts and messages showed a reduction of the contact list load time by one third.

Merge request reports