This was a holdover from Signal's origins as a pure SMS app.
It causes problems, depends on undefined device specific behavior,
and should no longer be necessary now that we have all the
information we need to E164 all numbers.
// FREEBIE
1) Remove all our PDU code and switch to the PDU code from the
klinker library
2) Switch to using the system Lollipop MMS library by default,
and falling back to our own custom library if that fails.
3) Format SMIL differently, using code from klinker instead of
what we've pieced together.
4) Pull per-carrier MMS media constraints from the XML config
files in the klinker library, instead of hardcoding it at 280kb.
Hopefully this is an improvement, but given that MMS is involved,
it will probably make things worse instead.
1) The group ID for jobs that process received messages was
previously set to the sender's e164. This guaranteed
serialization of messages per-recipient, while allowing
processing of multiple recipients in parallel. Unfortunately
in the case of groups, this results in out of order
conversations, since the "sender" for each message is
different. And we can't determine that it was a group
message until *after* we process it. So this change just
puts all message processing from all senders in one big queue.
2) Synchronization messages were always being displayed before
received messages, due to the "received time" for those
being set to the time they were sent.
Fixes#3618Fixes#2385
// FREEBIE
1) Switch to new TextSecureAddress addressing, rather than mixing
long-based recipient IDs into libtextsecure.
2) Get rid of RecipientFormattingException throws in calls to
RecipientFactory.
Closes#2570
1) Migrate from GSON to Jackson everywhere.
2) Add support for storing identity key conflicts on message rows.
3) Add limited support for surfacing identity key conflicts in UI.
1) When registering with server, indicate that the server should
store messages and send notifications.
2) Process notification GCM messages, and connect to the server
to retrieve actual message content.