Skip to content

Improve ServiceMessageDelegate, improve overall performance

Matti Viljanen requested to merge improve-service-message-and-performance into main

This ended up as one of my signature "this has everything" branches. Sorry about that.

Correctness fixes:

  • Code uses identity_key_change whereas database was migrated with identity_reset -- use the latter
  • Use more correct description for profile key changes in ServiceMessageDelegate
  • Return "never" section string for sessions without last message

Improvements:

  • Print more service message details when an unknown/unhandled service message type is encountered

Performance work:

  • SessionDelegate: Don't instantiate Recipient for groups
  • SessionDelegate: Don't instantiate Groups at all (pass the id instead)
  • SessionDelegate: Don't pass Recipient to ServiceMessageDelegate
  • ServiceMessageDelegate: Don't call getRecipientName() but get the name from SessionDelegate
  • Don't calulate dates in section() if there is no latest message
  • QML: Make many loaders asynchronous
    • Noticeably less micro-stuttering on my X10III
    • Less micro and macro-stutterin on my XA2U, with some message bubble "parts" "poppin in"

Merge request reports