Commit Graph

89 Commits (5942e93a33add6aef92fd8f8031602dd53b352c3)

Author SHA1 Message Date
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
8 years ago
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
8 years ago
Moxie Marlinspike 04f364942e Don't update thread state for groups w/ verified/default SNs
Fixes #6744
// FREEBIE
8 years ago
Moxie Marlinspike 76c28cfa7a Add support for SN verification
// FREEBIE
8 years ago
Moxie Marlinspike cb670d6783 Improve UI send latency
// FREEBIE
8 years ago
Moxie Marlinspike 2f46c6ca1f Don't redisplay notifications after they have been dismissed
Fixes #5751
Fixes #6218
// FREEBIE
8 years ago
Moxie Marlinspike 8f96cff104 Don't let outgoing messages trigger last seen divider
Closes #6306
// FREEBIE
8 years ago
Moxie Marlinspike bdc464193d Adjust last seen divider on read sync
Fixes #6273
// FREEBIE
8 years ago
Moxie Marlinspike acca4a72d3 Improve default SMS subscription id intelligence
Fixes #5266
// FREEBIE
8 years ago
Moxie Marlinspike ea0945d406 Beta support for webrtc video and voice calling
// FREEBIE
8 years ago
Moxie Marlinspike 7e51d61c79 Ignore duplicate signal messages
Fixes #5579

// FREEBIE
8 years ago
Moxie Marlinspike cdf3a849e9 Reduce DB updates on send path, move support SDK up to 24
// FREEBIE
8 years ago
Moxie Marlinspike 8d44a145f0 Start expiration timer when marked read from notification
// FREEBIE
9 years ago
Moxie Marlinspike 68b48ebe00 Start disappearing message timer on read sync messages
Fixes #5733
// FREEBIE
9 years ago
Moxie Marlinspike 848a25664b Make fingerprint changes optionally non-blocking
Also complete the rename from "identity" to "safety numbers."

// FREEBIE
9 years ago
Christian Ascheberg e6347a38a2 mark group update messages as unread
Closes #5575
// FREEBIE
9 years ago
Moxie Marlinspike d7e4928f22 Support for disappearing messages
// FREEBIE
9 years ago
Moxie Marlinspike 7b589c4300 TextSecure is now SignalService
// FREEBIE
9 years ago
Moxie Marlinspike 08e2221dc0 Support for synchronizing read state to/from desktop
// FREEBIE
9 years ago
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
9 years ago
Moxie Marlinspike 49f60971bd Cache delivery receipts when they arrive before sync message
// FREEBIE
10 years ago
haffenloher e5cd3e4fd1 Update inbox status icon on SMS delivery receipt
Closes #4848
// FREEBIE
10 years ago
haffenloher 7c95adc7e6 Add delivery status icons to the conversation list
Closes #4710
10 years ago
Moxie Marlinspike 2ab0029d49 Support for archive actions
Fixes #1141
Closes #4698
// FREEBIE
10 years ago
Moxie Marlinspike 8d82033855 Notify when contacts join Signal
Closes #4314
// FREEBIE
10 years ago
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
10 years ago
Moxie Marlinspike 26979b1c62 Log calls to conversations
// FREEBIE
10 years ago
Jake McGinty edc47247f9 add thread/date multi-col SQLite indices
Closes #3880
// FREEBIE
10 years ago
Jake McGinty 00eb637e51 stop sync resolution of recipients on ui thread
Closes #3885
// FREEBIE
10 years ago
Moxie Marlinspike 8d9ae731ef Only use MasterSecret for local message encryption.
Not for the axolotl store.

// FREEBIE
10 years ago
Moxie Marlinspike 64df85f3ee Refactor contact photo logic to not reuse drawables.
// FREEBIE
10 years ago
Moxie Marlinspike 40af2a81db Support for per-recipient muting, blocking, and ringtones.
Fixes #757
Fixes #354
Fixes #222
Closes #1815
Closes #3378

// FREEBIE
10 years ago
Jake McGinty 6d0720c956 insecure fallback mark as "not push"
Closes #3332
// FREEBIE
10 years ago
Moxie Marlinspike 2cfc714b64 Support for receiving incoming sync messages.
Closes #3188
// FREEBIE
10 years ago
Rhodey Orbits 9ba19df2af Eliminate ghost thread when all messages deleted in a thread.
Fixes #2262
Closes #2842

// FREEBIE
10 years ago
Moxie Marlinspike a4e18c515c Remove encrypted SMS transport, simplify transport options.
Closes #2647

// FREEBIE
10 years ago
Moxie Marlinspike 5602a3dfc0 Update to latest version of libtextsecure for simplified interface.
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
10 years ago
Moxie Marlinspike 00d7b5c284 Better UX handling on identity key mismatches.
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.
10 years ago
Moxie Marlinspike d72a3ec669 Do thread trimming as JobManager job rather than AsyncTask.
// FREEBIE
11 years ago
Moxie Marlinspike 08ed90c5ec Split out Util functions. 11 years ago
Moxie Marlinspike cafe03a70a Transition the outbound pipeline to JobManager jobs. 11 years ago
Moxie Marlinspike a3f1d9cdfd Beginning of libtextsecure refactor.
1) Break out appropriate components.

2) Switch the incoming pipeline from SendReceiveService to
   the JobManager.
11 years ago
Moxie Marlinspike 9768de2d5e Short circuit self-send.
// FREEBIE
11 years ago
Moxie Marlinspike b568ce70b2 Make delivery receipts work correctly for groups. 11 years ago
Moxie Marlinspike 36ec1d84a1 Implement delivery receipts.
1) Support a "receipt" push message type.

2) Identify messages by timestamp.

3) Introduce a JobManager to handle the queue for network
   dependent jobs.
11 years ago
Moxie Marlinspike 819982af7b Rearrange decrypt API.
1) Change SessionBuilder to only establish sessions via
   KeyExchangeMessage and PreKeyBundles.

2) Change SessionCipher to decrypt either WhisperMessage
   or PreKeyWhisperMessage items, automatically building
   a session for the latter.

3) Change SessionCipher to tear down new sessions built
   with PreKeyWhisperMessages if the embedded WhsiperMessage
   fails to decrypt.
11 years ago
Moxie Marlinspike 68747142d6 Add correct contextual menu options on 'Send' button.
[Send TextSecure message | Send unencrypted SMS | Send encrypted SMS]

// FREEBIE
11 years ago
Moxie Marlinspike 0574ec170a Display legacy message error when V1 message is received. 11 years ago
Moxie Marlinspike 1d07ca3e6f Remove V1 code. 11 years ago
Jake McGinty 832763f695 UX for unencrypted fallback case 11 years ago