Commit Graph

132 Commits

Author SHA1 Message Date
Moxie Marlinspike
2c1337b33e Make early receipts work in group messages
For both conversation item view and message details view

// FREEBIE
2017-10-02 14:54:55 -07:00
Moxie Marlinspike
285947eb66 Show per-member delivery/read status on message info in groups
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
cb9bc9659b Support for read receipts
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
989ea4042c MMS group includes the sender
Fixes #6942
// FREEBIE
2017-09-08 11:19:57 -07:00
Moxie Marlinspike
6924f0519e No need for a RecipientFactory any longer
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
1b2f52209d Display unknown sender footer for unknown senders
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
375207f073 Switch MMS groups to use the group database infrastructure
Eliminate the concept of 'Recipients' (plural). There is now just
a 'Recipient', which contains an Address that is either an individual
or a group ID.

MMS groups now exist as part of the group database, just like push
groups.

// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
8de9261081 MMS addresses can be email addresses
Fixes #6853
// FREEBIE
2017-08-04 09:22:58 -07:00
Moxie Marlinspike
737810475e Remove the Canonical Address Database
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
2017-07-31 12:02:29 -07:00
FeuRenard
a9ea672888 Resolve media message race condition
Fixes #6677
Closes #6681
2017-05-31 14:51:48 -07:00
Moxie Marlinspike
b78c05e70b Keep track of when audio attachments are voice notes
// FREEBIE
2017-05-11 22:46:35 -07:00
Moxie Marlinspike
51d6144591 Significant MMS changes
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.
2017-05-08 18:14:55 -07:00
Moxie Marlinspike
cb670d6783 Improve UI send latency
// FREEBIE
2017-04-26 10:27:30 -07:00
Moxie Marlinspike
f67eb5f9f3 Support for receiving arbitrary attachment types
// FREEBIE
2017-03-29 18:17:34 -07:00
Moxie Marlinspike
2f46c6ca1f Don't redisplay notifications after they have been dismissed
Fixes #5751
Fixes #6218
// FREEBIE
2017-03-14 10:09:24 -07:00
Moxie Marlinspike
79e925051a Support for attachment digests
// FREEBIE
2017-02-26 11:16:01 -08:00
Moxie Marlinspike
8f96cff104 Don't let outgoing messages trigger last seen divider
Closes #6306
// FREEBIE
2017-02-26 10:49:48 -08:00
Moxie Marlinspike
bdc464193d Adjust last seen divider on read sync
Fixes #6273
// FREEBIE
2017-02-21 22:33:16 -08:00
Moxie Marlinspike
4fb8d1fa49 Fix for NPE when MMS From is absent
Fixes #6115
// FREEBIE
2017-01-29 13:16:51 -08:00
Moxie Marlinspike
7e51d61c79 Ignore duplicate signal messages
Fixes #5579

// FREEBIE
2017-01-22 14:47:02 -08:00
Moxie Marlinspike
235a8472d9 Remove dedicated MMS download controls
// FREEBIE
2017-01-20 15:26:17 -08:00
Moxie Marlinspike
cdf3a849e9 Reduce DB updates on send path, move support SDK up to 24
// FREEBIE
2017-01-02 17:17:48 -08:00
Moxie Marlinspike
a4c17e5325 Support for generating video thumbnails
// FREEBIE
2016-12-12 17:38:05 -08:00
Moxie Marlinspike
8d44a145f0 Start expiration timer when marked read from notification
// FREEBIE
2016-10-10 11:13:37 -07:00
Moxie Marlinspike
38ec5647dd Don't mark expiration updates as unread
Fixes #5768
// FREEBIE
2016-10-10 10:14:12 -07:00
Moxie Marlinspike
383a266400 Fix bad projection on MMS sync read query
// FREEBIE
2016-10-07 10:41:15 -07:00
Moxie Marlinspike
68b48ebe00 Start disappearing message timer on read sync messages
Fixes #5733
// FREEBIE
2016-10-02 12:08:30 -07:00
Moxie Marlinspike
d7e4928f22 Support for disappearing messages
// FREEBIE
2016-08-28 17:03:23 -07:00
Moxie Marlinspike
7b589c4300 TextSecure is now SignalService
// FREEBIE
2016-03-24 14:05:56 -07:00
Moxie Marlinspike
08e2221dc0 Support for synchronizing read state to/from desktop
// FREEBIE
2016-02-19 17:07:41 -08:00
Moxie Marlinspike
6da86e482d Support for dual-sim SMS/MMS functionality
Allow source selection for sending SMS/MMS, and display the
SIM that received SMS/MMS.

Fixes #555
Closes #5199
// FREEBIE
2016-02-09 16:53:15 -08:00
Moxie Marlinspike
49f60971bd Cache delivery receipts when they arrive before sync message
// FREEBIE
2015-12-10 05:04:03 -08:00
Moxie Marlinspike
8fb73a092d Slight optimization for message status updates
// FREEBIE
2015-12-03 11:47:28 -08:00
haffenloher
7c95adc7e6 Add delivery status icons to the conversation list
Closes #4710
2015-12-03 11:28:04 -08:00
Moxie Marlinspike
2ab0029d49 Support for archive actions
Fixes #1141
Closes #4698
// FREEBIE
2015-11-27 12:45:23 -08:00
Moxie Marlinspike
4271732b10 Be more rigorous about discerning media message thread.
Fixes #4312
// FREEBIE
2015-10-28 10:24:55 -07:00
Moxie Marlinspike
f714f5b572 Really limit the number of rows that can be joined from parts.
Fixes #4299
Fixes #4298
// FREEBIE
2015-10-25 09:58:21 -07:00
Moxie Marlinspike
cb3f9a6805 Distinct rows from join
// FREEBIE
2015-10-24 14:38:03 -07:00
Moxie Marlinspike
c258b4c7aa Expand MMS-specific queries, properly parse incoming MMS.
// FREEBIE
2015-10-24 09:40:04 -07:00
Moxie Marlinspike
5111fe2e95 Display thumbnail previews for images in conversation list.
Closes #4262
// FREEBIE
2015-10-22 10:45:04 -07:00
Moxie Marlinspike
d2f44f6584 Join attachments instead of running an asynchronous query.
No more SlideDeck futures, just SlideDecks.

// FREEBIE
2015-10-22 10:31:22 -07:00
Moxie Marlinspike
25e099a309 Fix two message ordering issues.
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 #3618
Fixes #2385

// FREEBIE
2015-10-16 10:07:50 -07:00
Moxie Marlinspike
09e52834a6 Refactor "parts" to contain MMS/PDU madness to MMS code paths.
Closes #4248
// FREEBIE
2015-10-15 11:11:39 -07:00
Jake McGinty
551274f167 Large attachment support
Closes #4019
// FREEBIE
2015-09-17 12:20:25 -07:00
Jake McGinty
923d9fb07b fix crash on pending self-sent media
fixes #4016
Closes #4017
// FREEBIE
2015-09-04 11:42:58 -07:00
Jake McGinty
80ce83ef9d Media download controls
Closes #3991
// FREEBIE
2015-09-03 11:40:55 -07:00
Jake McGinty
edc47247f9 add thread/date multi-col SQLite indices
Closes #3880
// FREEBIE
2015-08-06 11:29:59 -07:00
Jake McGinty
00eb637e51 stop sync resolution of recipients on ui thread
Closes #3885
// FREEBIE
2015-08-05 13:14:21 -07:00
Moxie Marlinspike
8d9ae731ef Only use MasterSecret for local message encryption.
Not for the axolotl store.

// FREEBIE
2015-07-16 11:15:56 -07:00
Jake McGinty
c2e5f4e80a Add transfer indicators for attachments
Closes #3498
// FREEBIE
2015-07-01 15:38:55 -07:00