Messages sent from another device of the own account are now explicitly
tagged as carboned message. The session detection logic now uses this
tag to find "session borders".
Plaintext messages that were received while in an encrypted session are
now colored red. We define "in an encrypted session" if a) the last
message sent by our own device before the message under consideration
(or any message received between then and now) was encrypted AND b) the
next message will be sent encrypted or the next message sent after the
one under consideration was sent encrypted
Moves SQLiteAxolotlStore and XmppAxolotlSession into proper classes.
IdentityKeys trust statuses are now cached in an LruCache to prevent
hammering the database when rendering the UI.
* change chat states to type=chat and chat markers to type=chat
* use same type as requesting stanza for delivery receipts (which should make them type=chat most of the time)
We introduce a new trust state: INACTIVE. This state is intended for
old keys that have been removed.
When a TRUSTED device is removed from the PEP devicelist, it's status
will be set to INACTIVE. INACTIVE keys are shown in the UI as greyed
out, non-interactible key rows. Messages are not encrypted for INACTIVE
devices.
When an INACTIVE device reappears in PEP, or a message is received from
an INACTIVE device, it is set back to trusted.
* CryptoNextBeta: (60 commits)
Lock TrustKeys if no trusted keys are available
Optimize imports
Use MD style for key trust toggle switch
Fix set/remove OnUpdateBlocklistListener
Fix axolotl database migration
Remove device list from EditAccount
Add clear devices to overflow menu in EditAccount
Ask for key trust when sending messages
Encrypt files for HTTP upload in encrypted chats
Refactor trust key ui and show in account details
Send correct body for HTTP files
Handle file transmission properly in axolotl
Remove unneccessary code
Fix trust status for outgoing messages
Don't merge messages with different trust statuses
Fix copying of axolotl keys to clipboard
Add refresh icon to v21 theme
Disable Axolotl option if not usable
Show trust status of messages' originating session
Add key trust toggle to ContactDetailsActivity
...