Commit Graph

81 Commits (17dbdbd0a9da7214d93fb2ca872dd6b971346867)

Author SHA1 Message Date
Greyson Parrelli 43622e603d Save replies in drafts.
Previously, quotes were not saved to drafts, meaning they would be lost
when leaving the conversation or app. Now, a QuoteId (which represents
the necessary data to restore the QuoteModel) is serialized and stored
in the DraftDatabase.

Fixes #7716
Closes #7729
7 years ago
Greyson Parrelli fa99e8f0d0 Updated reply-to UI.
All UI components are now properly styled and functioning according to
spec.
7 years ago
Moxie Marlinspike d567534609 replies 7 years ago
Sam Lanning 69f180a5ec Fix some potential integer overflows for expiration time
In a number of locations in the code, there were conversions of message
expiration times from seconds to milliseconds, and then assigned to `long`
contexts. However these conversions were being done as integer multiplication
rather than long multiplication, meaning that there was a potential for
overflows.

Specifically, the maximum value that could be represented before overflowing
was (2^31 / 1000 / 60 / 60 / 24) days = 24.8 days (< 1 month). Luckily the
current allowed timeouts are all less than that value, but this fix would
remove the artificial restriction, effectively allowing values of 1000x greater
(68 years), at least for android.

Related #5775
Closes #7338
7 years ago
Moxie Marlinspike 9d5d43cf3a Wait to process messages until after migration when screenlocked
Fixes #7390
7 years ago
Moxie Marlinspike f36b296e2e Migrate from SQLite and ciphertext blobs to SQLCipher + KeyStore 7 years ago
Moxie Marlinspike 4de14a5dc1 Only use startForegroundService for initial service construction 8 years ago
Moxie Marlinspike acfc9d75e0 Use startForegroundService instead of startService on Android 8 8 years ago
haffenloher 3df9112cf8 Fix synced sent media messages expiring too fast
Fixes #6928
Closes #7135
8 years ago
Moxie Marlinspike 2c1337b33e Make early receipts work in group messages
For both conversation item view and message details view

// FREEBIE
8 years ago
Moxie Marlinspike 856a4d2860 Process configuration request messages
// FREEBIE
8 years ago
Moxie Marlinspike 285947eb66 Show per-member delivery/read status on message info in groups
// FREEBIE
8 years ago
Moxie Marlinspike cb9bc9659b Support for read receipts
// FREEBIE
8 years ago
Moxie Marlinspike 3e3ae5f865 Adjust profile key sharing based on sync messages
// FREEBIE
8 years ago
Moxie Marlinspike d0cd2621ca Only process messages if a body is present
// FREEBIE
8 years ago
Moxie Marlinspike 51c1e4485f Support for profile key syncing to sibling devices
// FREEBIE
8 years ago
Moxie Marlinspike f17af19d09 Access all RecipientDatabase settings directly from Recipient
// FREEBIE
8 years ago
Moxie Marlinspike d1790dfe17 Rename RecipientPreferences -> RecipientSettings
// FREEBIE
8 years ago
Moxie Marlinspike 8e6ca53023 Rename RecipientPreferencesDatabase -> RecipientDatabase
// FREEBIE
8 years ago
Moxie Marlinspike 6924f0519e No need for a RecipientFactory any longer
// FREEBIE
8 years ago
Moxie Marlinspike 77a216b705 Support for retrieving and storing profile information
Initial support for sharing profile keys

// FREEBIE
8 years ago
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 82b5b35d3b Eliminate MediaNetworkRequirement style attachment job handling
// FREEBIE
8 years ago
Moxie Marlinspike 074e46b2d9 Enable verification syncing
// FREEBIE
8 years ago
Moxie Marlinspike 1eccc07673 Temporarily disable synchronization messages
Until desktop catches up

// FREEBIE
8 years ago
Moxie Marlinspike 76c28cfa7a Add support for SN verification
// FREEBIE
8 years ago
Moxie Marlinspike b50a3fa2b8 Actually handle busy signal correctly
// FREEBIE
8 years ago
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.
8 years ago
Moxie Marlinspike cb670d6783 Improve UI send latency
// FREEBIE
8 years ago
Moxie Marlinspike f67eb5f9f3 Support for receiving arbitrary attachment types
// FREEBIE
8 years ago
Moxie Marlinspike a8366387ab Fix the build
// FREEBIE
8 years ago
haffenloher 66c9fd44df Honor synced end session messages
Fixes #5174
Closes #5178
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 8cd50d1e82 Update last seen state on desktop sync send
// 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 cb23e3a930 Untrusted identity is not always a legacy message content
Closes #5924
Fixes #5922
// 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 cf01959e16 Support recovering forgotten/unknown group info from sender
Closes #5876
// FREEBIE
9 years ago
Moxie Marlinspike 3787551878 Squelch notifications for active desktop converastions
Additionally, limit audible notifications to once every 2 seconds.

// FREEBIE

Fixes #4905
Fixes #3165
Closes #5813
9 years ago
Moxie Marlinspike 5ed1c9c72b Fix for expiration update sync sent messages
// FREEBIE
9 years ago
Moxie Marlinspike 68b48ebe00 Start disappearing message timer on read sync messages
Fixes #5733
// FREEBIE
9 years ago
Moxie Marlinspike 32f5bd5336 Support for syncing contact colors and block lists
Closes #5638
// 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 e32736359b Move group message to group after accepting new identity key
Fixes #2739
// FREEBIE
10 years ago
Moxie Marlinspike 073be6696b Mark threads as read when we get an outgoing sync message
// FREEBIE
10 years ago