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
mcloo
60eaade6b0
Fix plaintext export XML name escaping
...
Fixes #6830
Closes #6861
2017-08-22 15:22:03 -07:00
Moxie Marlinspike
a80fe178ea
Canonicalize addresses during import from system SMS database
...
// FREEBIE
2017-08-10 12:30:13 -07:00
Moxie Marlinspike
8de9261081
MMS addresses can be email addresses
...
Fixes #6853
// FREEBIE
2017-08-04 09:22:58 -07:00
Moxie Marlinspike
cb4303ac23
Handle migration case where recipient_ids is completely empty
...
No idea how a DB is in that state, but apparently it's possible
Fixes #6850
// FREEBIE
2017-08-03 09:32:56 -07:00
Moxie Marlinspike
9a78615991
Switch regexp matcher to find() in order to handle alpha addresses
...
Any address with an alpha character anywhere in it should be used
as-is.
Fixes #6849
// FREEBIE
2017-08-03 09:24:08 -07:00
Moxie Marlinspike
7f46e99f9c
Use SIM country code when registered number is unavailable
...
Convert directory operations to Addresses
Fixes #6845
// FREEBIE
2017-08-02 12:51:46 -07:00
Moxie Marlinspike
1e934f6146
Escape addresess in thread and recipient pref migrations
...
For clients that have not yet migrated
// FREEBIE
2017-08-02 11:08:38 -07:00
Moxie Marlinspike
aacf50316d
Escape addresses in thread, recipient pref, and group databases
...
Fixes #6847
// FREEBIE
2017-08-02 11:04:10 -07:00
Moxie Marlinspike
24c48afd2e
Fix typo in migration constraint resolution
...
Fixes #6846
// FREEBIE
2017-08-02 08:02:15 -07:00
Moxie Marlinspike
9a55632202
During migration, support recipient id of "-1"
...
Fixes #6843
// FREEBIE
2017-08-01 18:45:13 -07:00
Moxie Marlinspike
6ed549cfb2
If two recipient ids get canonicalized to the same thing, drop one
...
There's not a great way for me to know which of them is the "real"
entry, which means that I could be deleting the wrong one. In the
case of recipient "preferences," it's hopefully not a huge loss,
and there aren't any other great options.
Fixes #6838
// FREEBIE
2017-08-01 14:52:03 -07:00
Moxie Marlinspike
8a5c89244a
Be more liberal with migration addresses.
...
Anything alpha is an address as-is.
// FREEBIE.
2017-08-01 14:46:38 -07:00
Moxie Marlinspike
a67d0b18ff
Be more liberal with external address formatting
...
A string like "bonbon" should just be "bonbon". That is apparently
a valid SMS source address.
// FREEBIE
2017-08-01 14:04:51 -07:00
Moxie Marlinspike
0ae60da68b
Fix some bugs that would mis-label threads in migration
...
// FREEBIE
2017-07-31 14:04:47 -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
Moxie Marlinspike
82b5b35d3b
Eliminate MediaNetworkRequirement style attachment job handling
...
// FREEBIE
2017-07-21 15:59:27 -07:00
Gavin Howard
381237a315
Make plaintext export more compatible with SMS Backup and Restore
...
This commit adds the contact name and the readable date (and time) to
the plaintext export of every message. That's because that is how SMS
Backup and Restore does it, so this commit makes Signal more compatible.
Closes #6452
// FREEBIE
2017-07-06 12:19:12 -07:00
Christian Ascheberg
d0bb68e137
Fix group creation through group info request
...
Closes #6763
// FREEBIE
2017-07-05 14:19:55 -07:00
Christian Ascheberg
95d48bd3e9
Improve wording of joined contact notification
...
Fixes #6757
Closes #6764
// FREEBIE
2017-07-05 14:18:07 -07:00
Moxie Marlinspike
074e46b2d9
Enable verification syncing
...
// FREEBIE
2017-06-23 13:59:06 -07:00
Moxie Marlinspike
04f364942e
Don't update thread state for groups w/ verified/default SNs
...
Fixes #6744
// FREEBIE
2017-06-19 11:20:15 -07:00
Moxie Marlinspike
ec240a94e6
Fix capitalization (innocuous)
...
// FREEBIE
2017-06-15 12:04:50 -07:00
Moxie Marlinspike
76c28cfa7a
Add support for SN verification
...
// FREEBIE
2017-06-09 19:58:01 -07:00
Moxie Marlinspike
7e40204eb2
Fix migration
...
Fixes #6695
// FREEBIE
2017-06-01 10:57:45 -07:00
FeuRenard
a9ea672888
Resolve media message race condition
...
Fixes #6677
Closes #6681
2017-05-31 14:51:48 -07:00
Moxie Marlinspike
5455bdffb2
Make sure existing identity entries are approved in migration
...
// FREEBIE
2017-05-31 14:51:48 -07:00
Christian Ascheberg
662fe826cb
Fix conversation list safety number change snippet for groups
...
Fixes #5985
Closes #6655
// FREEBIE
2017-05-31 14:51:48 -07:00
Moxie Marlinspike
d507756821
Some identity key handling changes
...
1) Prefetch identity keys when possible
2) Always accept prefetched keys or keys from incoming messages
3) Block sending only if it's a recent change, or if always
block is enabled
// FREEBIE
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
Jonas Vautherin
dd3cef5ec2
Refactor storage management to have a centralized,
...
clearer way to get the Signal output directories
Closes #6476
// FREEBIE
2017-05-06 14:06:04 -07:00
Moxie Marlinspike
cb670d6783
Improve UI send latency
...
// FREEBIE
2017-04-26 10:27:30 -07:00
Moxie Marlinspike
8e7c7a9c54
Improve video thumbnail generation and handling on send side
...
For direct attach only
// FREEBIE
2017-04-21 23:05:59 -07:00
Moxie Marlinspike
75782affd1
Adjust joined signal string
...
// FREEBIE
2017-03-31 08:54:07 -07:00
Moxie Marlinspike
056f2717ed
Remove duplicate column in SQL query
...
// FREEBIE
2017-03-30 16:12:42 -07:00
Moxie Marlinspike
f67eb5f9f3
Support for receiving arbitrary attachment types
...
// FREEBIE
2017-03-29 18:17:34 -07:00
Christian Ascheberg
3506f2db12
Improve group update descriptions
...
Closes #5416
// FREEBIE
2017-03-14 14:26:14 -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
6866a74d95
Don't display the last seen divider for outgoing calls
...
// FREEBIE
2017-03-09 17:31:07 -08:00
Moxie Marlinspike
cbba8c0d76
Update signal-service
...
// FREEBIE
2017-03-09 17:31:03 -08: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
8cd50d1e82
Update last seen state on desktop sync send
...
// FREEBIE
2017-02-22 15:05:35 -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
acca4a72d3
Improve default SMS subscription id intelligence
...
Fixes #5266
// FREEBIE
2017-02-19 12:29:33 -08:00
Moxie Marlinspike
d5b7ff58e2
Fix for last_seen crash when archive placeholder is visible
...
// FREEBIE
2017-02-19 12:29:33 -08:00
Moxie Marlinspike
aa30f3e410
Revert "Don't use SHA1 for stable IDs"
...
This reverts commit 7286fd9b06ec582bfd4ed83dd81a461564806250.
Fixes #6223
// FREEBIE
2017-02-19 12:29:33 -08:00
haffenloher
83e31cac07
Show videos in media overview
...
Fixes #5941
Closes #6152
// FREEBIE
2017-02-19 12:29:33 -08:00
Moxie Marlinspike
d9b42c4369
Support for a "new messages" divider in conversations
...
// FREEBIE
2017-02-19 12:29:33 -08:00
Moxie Marlinspike
0efd6d9341
Don't use AsyncTask for beta calling capabilities refresh
...
Also, actually store the result in the directory db.
Fixes #6212
// FREEBIE
2017-02-12 11:27:26 -08:00
Moxie Marlinspike
ea0945d406
Beta support for webrtc video and voice calling
...
// FREEBIE
2017-02-01 13:55:52 -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
15a389c171
Don't calculate date header item for adapter header
...
Fixes #6098
// FREEBIE
2017-01-25 18:00:26 -08:00
Moxie Marlinspike
b575b4e6ae
Fix for intermittent crash
...
// FREEBIE
2017-01-24 17:51:32 -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
7286fd9b06
Don't use SHA1 for stable IDs
...
// FREEBIE
2017-01-19 19:06:46 -08:00
Moxie Marlinspike
edac0e85c7
Fix non-thread-safe operations on canonical id cache
...
// FREEBIE
2017-01-12 16:06:14 -08:00
Niklas Wenzel
770026d4ee
Fix the faulty tests in AttachmentDatabaseTest.java
...
Fixes #5948
Closes #5952
2017-01-12 10:23:35 -08:00
Moxie Marlinspike
a125fcb8fa
Support for direct share targets
...
Fixes #4333
// FREEBIE
2017-01-11 19:54:58 -08:00
Moxie Marlinspike
0c6bfdbd0d
Improve canonical address database caching
...
// FREEBIE
2017-01-02 17:17:48 -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
cf01959e16
Support recovering forgotten/unknown group info from sender
...
Closes #5876
// FREEBIE
2016-12-01 10:34:47 -08:00
Moxie Marlinspike
8b342ee18b
Support for "recent photos" thumbnailsabove attachment selector
...
// FREEBIE
Closes #5893
2016-11-27 19:37:31 -08:00
RiseT
e8ae6d67b1
Change safety number strings to be singular
...
// FREEBIE
Closes #5894
2016-11-27 19:35:54 -08:00
Niklas Wenzel
0d493a3af9
Get the automated tests up and running again
...
* Fix the build.gradle file
* Use the correct VisibleForTesting class
* Fix the Android test setUp() logic
* Enable a test in DeliveryReceiptJobTest.java where the @Test anotation was missing
It should be noted that the tests in AttachmentDatabaseTest.java fail.
Fixes #3474
Closes #5882
2016-11-24 08:13:46 -08:00
FeuRenard
f5966af781
Allow 2nd person conjugation in timer messages
...
Fixes #5658
// FREEBIE
2016-11-11 18:37:16 -08:00
Moxie Marlinspike
8d44a145f0
Start expiration timer when marked read from notification
...
// FREEBIE
2016-10-10 11:13:37 -07:00
RiseT
8e1970c398
Make message and thread records for changed safety numbers translatable
...
Fixes #5769
Closes #5771
Makes the message and thread records for 'Your safety numbers with %s
have changed' translatable.
// FREEBIE
2016-10-10 10:16:23 -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
FeuRenard
d00441e20d
Implement onStartLoading() in DeviceListLoader
...
Fixes #4641
Closes #5682
// FREEBIE
2016-09-25 14:58:27 -07:00
Moxie Marlinspike
848a25664b
Make fingerprint changes optionally non-blocking
...
Also complete the rename from "identity" to "safety numbers."
// FREEBIE
2016-09-25 14:27:40 -07:00
Christian Ascheberg
e1b24ab878
Fix display of secure session reset records
...
Fixes #5605
Closes #5680
// FREEBIE
2016-09-14 16:37:28 -07:00
Moxie Marlinspike
32f5bd5336
Support for syncing contact colors and block lists
...
Closes #5638
// FREEBIE
2016-09-14 16:37:28 -07:00
Moxie Marlinspike
1d8276d148
Add EXPIRES_IN column to matrix cursor archived placeholder
...
Fixes #5656
// FREEBIE
2016-09-01 20:43:59 -07:00
Christian Ascheberg
e6347a38a2
mark group update messages as unread
...
Closes #5575
// FREEBIE
2016-09-01 11:08:21 -07:00
Christian Ascheberg
53e9b2ad1b
ignore fast sender clock
...
Closes #5577
// FREEBIE
2016-09-01 11:02:57 -07:00
FeuRenard
db10e5fec6
Mark verified messages as push
...
Fixes #4769
Closes #5627
// FREEBIE
2016-08-31 18:09:29 -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
Christian Ascheberg
3d651ef29a
rename plaintext backup filename
...
Closes #5260
// FREEBIE
2016-02-19 10:29:36 -08:00
haffenloher
156c5c6e09
Use sent time as timestamp for push image records
...
Use received time for non-push messages only. This makes the displayed
date for images accessed through "All images" consistent with the date
displayed everywhere else.
Related: #3535
Closes #5230
// FREEBIE
2016-02-18 17:53:37 -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
2-4601
058585bf81
Fix five strings
...
Fixes
- one ambiguous pronoun
- one remaining reference of ambiguous 'lock screen'
- three cases of 'click' -> 'tap'
And gets rid of unnecessary line breaks in two strings.
Closes #5095
// FREEBIE
2016-01-27 12:21:32 -08:00
Moxie Marlinspike
759f9d8016
Support for location drafts
...
Fixes #4979
// FREEBIE
2016-01-04 13:02:22 -08:00
Moxie Marlinspike
49f60971bd
Cache delivery receipts when they arrive before sync message
...
// FREEBIE
2015-12-10 05:04:03 -08:00
PurplePlatypus
fe5e101463
Change TS Media message timestamp from received time to sent time
...
Fix #3525
Closes #3535
//FREEBIE
2015-12-10 05:04:03 -08:00
haffenloher
e5cd3e4fd1
Update inbox status icon on SMS delivery receipt
...
Closes #4848
// FREEBIE
2015-12-09 11:24:45 -08:00
haffenloher
b41364c709
Add inbox delivery status migration
...
Fixes #4799
Closes #4809
// FREEBIE
2015-12-07 23:34:28 -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
Geonu Kang
8269047c88
Update attachment content type when updating attachment data
...
Fixes #4687
Closes #4688
2015-12-02 09:45:57 -08:00
Jake McGinty
946c43940b
add equals/hashCode to glide models
...
Closes #4737
// FREEBIE
2015-11-27 15:20:24 -08:00
Moxie Marlinspike
2ab0029d49
Support for archive actions
...
Fixes #1141
Closes #4698
// FREEBIE
2015-11-27 12:45:23 -08:00
Jake McGinty
473e470883
fix header/footer item ID issue
...
fixes #4667
Closes #4685
// FREEBIE
2015-11-22 17:30:36 -08:00
brumsel
06f2908d78
Don't show images without data under "all images"
...
This affects images
- that have yet to be downloaded (using media download controls)
- that are currently being downloaded
- that failed to download
closes #4507
2015-11-19 13:21:23 -08:00
Jake McGinty
4314a4b42b
add stable IDs to conversations
...
fixes #2856
Closes #4607
// FREEBIE
2015-11-19 11:46:56 -08:00
Moxie Marlinspike
69f5aacd25
Consider everything <= len(4) a short code, except short countries
...
// FREEBIE
2015-11-14 15:17:05 -08:00
Moxie Marlinspike
2a753c7795
Uhh, switch from valid to possible short codes?
...
Fixes #4478
// FREEBIE
2015-11-13 17:07:43 -08:00
Moxie Marlinspike
21f04605c6
Don't E164 shortcodes
...
Fixes #4478
// FREEBIE
2015-11-13 11:23:37 -08:00
Jake McGinty
d05097a6fd
Refactor group logic (no visual changes)
...
Closes #4480
// FREEBIE
2015-11-12 15:20:16 -08:00
Moxie Marlinspike
60ab71099f
Don't show group avatar icons in thread preview
...
Fixes #4383
// FREEBIE
2015-11-04 17:56:20 -08:00
Moxie Marlinspike
8d82033855
Notify when contacts join Signal
...
Closes #4314
// FREEBIE
2015-11-04 17:56:20 -08:00
Moxie Marlinspike
434ce4f9c9
Canonicalize entries in canonical address database.
...
Make all our queries E164, so eventually everything in there
will be E164. Stops thrashing between formats.
Closes #4306
// FREEBIE
2015-11-04 17:56:20 -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
40108d5276
Catch exception strangely thrown by system query from Sony device.
...
Fixes #4309
// FREEBIE
2015-10-26 12:34:27 -07:00
Moxie Marlinspike
f6a5f117b8
Generate thumbnails for outgoing pending messages.
...
Fixes #4307
// FREEBIE
2015-10-26 11:39:00 -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
15c6f18750
Support for an audio view to allow in-app playback of audio.
...
Closes #4270
// FREEBIE
2015-10-22 10:32:45 -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
Jake McGinty
4ffb1ea95e
in-conversation invite reminder
...
Closes #4250
// FREEBIE
2015-10-15 13:23:37 -07:00
Jake McGinty
ae97495c47
only load partial conversation by default
...
Closes #4252
Fixes #3911
// FREEBIE
2015-10-15 11:16:49 -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
Geonu Kang
a0859a71b2
Make 'reset secure session' consistent
...
Closes #4200
Fixes #4198
// FREEBIE
2015-10-04 10:24:21 -07:00
Moxie Marlinspike
e0ebe6c858
Switch up thread record strings
...
// FREEBIE
2015-10-01 18:01:15 -07:00
Moxie Marlinspike
77d73fa572
Correctly display call actions in thread list
...
Fixes #4170
// FREEBIE
2015-10-01 17:27:22 -07:00
Moxie Marlinspike
31e20ca87e
Distinguish between secure and insecure call in conversation menu.
...
// FREEBIE
2015-09-30 14:30:11 -07:00
Moxie Marlinspike
7377e6c7da
Support for syncing and checking secure voice support.
...
// FREEBIE
2015-09-30 14:30:10 -07:00
Moxie Marlinspike
26979b1c62
Log calls to conversations
...
// FREEBIE
2015-09-30 14:30:10 -07:00
Jake McGinty
92422a939a
trim threads in the right direction
...
Closes #4143
// FREEBIE
2015-09-28 16:59:06 -07:00
Jake McGinty
368f5c8dba
setHasStableIds(false)
...
because that shit is not stable
fixes #4128
// FREEBIE
2015-09-25 17:10:36 -07:00
Jake McGinty
99d3374d35
migrate conversation list to RecyclerView
...
fixes #2488
fixes #2333
// FREEBIE
2015-09-24 14:12:09 -07:00
Moxie Marlinspike
0794380ca8
Listen for recipient changes in conversations and group updates.
...
Closes #4079
// FREEBIE
2015-09-17 12:22:35 -07:00
Jake McGinty
551274f167
Large attachment support
...
Closes #4019
// FREEBIE
2015-09-17 12:20:25 -07:00
Jake McGinty
0e06e2de97
fix queuing of pending parts that had data already
...
fixes #4061
Closes #4073
// FREEBIE
2015-09-14 18:06:03 -07:00
Jake McGinty
526f6e3058
don't try generating an in-progress part thumbnail
...
Closes #4042
// FREEBIE
2015-09-07 14:56:56 -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
Sam Lanning
99adbe5784
Made some inner classes static (For Efficiency)
...
(and made one explicitly private)
Closes #3932
// FREEBIE
2015-09-02 12:46:56 -07:00
Jake McGinty
0c9d9e8dcf
use glide for encoding and resizing outgoing media
...
Closes #3915
// FREEBIE
2015-09-02 12:34:28 -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
f812efff3c
only create DB readers as needed
...
Closes #3730
// FREEBIE
2015-08-05 13:48:07 -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
bbf33f88e0
Support for static RecipientDetails for certain shortcodes.
...
Closes #3813
// FREEBIE
2015-07-29 16:17:27 -07:00
Moxie Marlinspike
beb3558d01
Fix missing strings.
...
// FREEBIE
2015-07-17 17:46:02 -07:00
Moxie Marlinspike
704f2b91e2
Clean up contact queries.
...
// FREEBIE
2015-07-16 11:15:56 -07:00
Moxie Marlinspike
d1940fe0f9
Support for populating contacts DB with TS account type.
...
// FREEBIE
2015-07-16 11:15:56 -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
54a37cc658
refactor direct capture
...
Closes #3516
// FREEBIE
2015-07-08 16:02:39 -07:00
Calvin Hu
c4a37e38ab
Add camera preview to message composition
2015-07-08 16:01:57 -07:00
Jake McGinty
c2e5f4e80a
Add transfer indicators for attachments
...
Closes #3498
// FREEBIE
2015-07-01 15:38:55 -07:00
Moxie Marlinspike
86cf59f9a8
Add DB migration for recipient color preference.
...
// FREEBIE
2015-07-01 12:27:25 -07:00
Moxie Marlinspike
ce2f66ad17
Refactor colorization to support dark theme.
...
// FREEBIE
2015-07-01 12:24:38 -07:00
Moxie Marlinspike
db9656c70c
Update conversation style.
...
1) No more blue/green for outgoing messages. Just lock or no lock.
2) Use 9-patches instead of shapes for better bubble performance.
3) Use tinting rather than different colored assets.
4) Change outgoing status indicators so that they don't change
width of the bubble as they update.
5) Switch to using ..., check, double-check for pending, sent,
delivered rather than using bubble tone to indicate pending.
// FREEBIE
2015-06-29 16:05:33 -07:00
Moxie Marlinspike
fb9f16ad29
Colorize conversations.
...
// FREEBIE
2015-06-27 19:43:18 -07:00
Moxie Marlinspike
64df85f3ee
Refactor contact photo logic to not reuse drawables.
...
// FREEBIE
2015-06-27 19:43:18 -07:00
Moxie Marlinspike
2c9c9891c6
Support for multi-device group sync and group requests.
...
// FREEBIE
2015-06-24 18:30:55 -07:00
Moxie Marlinspike
bf3c1d3745
Support for device management, limits, and contact requests.
...
// FREEBIE
2015-06-24 18:30:55 -07:00
Moxie Marlinspike
3c41f27298
Support for multi-device contact sync.
...
// FREEBIE
2015-06-24 18:30:55 -07:00
Moxie Marlinspike
c05555c290
Add listener to recipient preferences cursor.
...
Fixes #3398
// FREEBIE
2015-06-11 13:00:50 -07:00
Moxie Marlinspike
40af2a81db
Support for per-recipient muting, blocking, and ringtones.
...
Fixes #757
Fixes #354
Fixes #222
Closes #1815
Closes #3378
// FREEBIE
2015-06-11 11:09:02 -07:00
Jake McGinty
6d0720c956
insecure fallback mark as "not push"
...
Closes #3332
// FREEBIE
2015-06-03 15:54:52 -07:00
Jake McGinty
8999e5fc54
fix messages with push flag *and* sms flag set...
...
// FREEBIE
2015-06-03 15:54:52 -07:00
Rhodey Orbits
5fe7c687f3
1) renamed test build type to 'debugTest' because updated gradle
...
plugin doesn't allow build types to start with 'test'.
2) exclude support-annotations to avoid warning
Closes #3273
// FREEBIE
2015-06-03 12:18:28 -07:00
Rhodey Orbits
200fc0c599
fix the PartDatabase tests
...
Closes #3210
// FREEBIE
2015-06-03 12:17:25 -07:00
Moxie Marlinspike
ec60c24849
Slight cleanup for ConfirmIdentityDialog change.
...
Closes #3225
// FREEBIE
2015-06-03 11:11:23 -07:00
Moxie Marlinspike
9c2f14dade
Introduce unique part ID column for better cache accuracy.
...
Closes #3226
// FREEBIE
2015-05-21 12:17:42 -07:00
Moxie Marlinspike
2cfc714b64
Support for receiving incoming sync messages.
...
Closes #3188
// FREEBIE
2015-05-21 09:55:42 -07:00
Jake McGinty
5b788fe188
fix activity leak when initializing singletons
...
Closes #3219
// FREEBIE
2015-05-21 07:42:33 -07:00
Moxie Marlinspike
1beed21032
Fix for missing content id column in all images query.
...
Fixes #3218
// FREEBIE
2015-05-21 07:40:59 -07:00
Moxie Marlinspike
dc903e49af
Fix image cache bugs.
...
1) Index SlideDeckListener cache by MMS (id, timestamp) tuple.
2) Index parts by (id, content_id) tuples.
Fixes #840
Closes #3183
// FREEBIE
2015-05-20 13:38:24 -07:00
Jake McGinty
26c4d746d2
make part and mms insertion a single transaction
...
fixes #3051
closes #3059
// FREEBIE
2015-04-28 00:16:37 -05:00
Moxie Marlinspike
7b3bd2fbf7
Replace rather than insert into push db on duplicate incoming.
...
Combined with the switch to server acked messages, this will
prevent the race condition that occurred when an incoming message
showed up at exactly the moment the app updated.
It'd be great if we could just do REPLACE INTO, but it's too
late to add a UNIQUE() constraint. =(
Fixes #2287
Closes #3029
// FREEBIE
2015-04-23 12:08:19 -07:00
Rhodey Orbits
9ba19df2af
Eliminate ghost thread when all messages deleted in a thread.
...
Fixes #2262
Closes #2842
// FREEBIE
2015-04-16 16:43:58 -07:00
Moxie Marlinspike
1c90b59bb8
Don't attempt send failure notifications for deleted messages.
...
Fixes #2963
// FREEBIE
2015-04-13 08:57:20 -07:00
Rhodey Orbits
f5724795cf
Update thread timestamp on draft creation.
...
Fixes #1055
Closes #2909
// FREEBIE
2015-04-09 11:29:37 -07:00
Moxie Marlinspike
797b296f3a
Break long filter thread id calls up into chunks of 900.
...
// FREEBIE
Fixes #2462
Closes #2860
2015-04-02 14:27:00 -07:00
Jake McGinty
6c59eb052e
Prevent crash from strange SQLite error
...
Full fix may require packaging and using our own SQLite via JNI. Needs
further investigation.
Fixes #2506
Closes #2843
// FREEBIE
2015-04-01 10:23:05 -07:00
Jake McGinty
6a6f900b7d
Fix NPE when 'from' missing in NotificationInd
...
Fixes #2806
// FREEBIE
2015-03-27 10:59:04 -07:00
Jake McGinty
427c9a6b21
Use new MMS APIs in Lollipop onwards
...
Fixes #1937
Closes #2727
2015-03-26 11:05:41 -07:00
Moxie Marlinspike
a4e18c515c
Remove encrypted SMS transport, simplify transport options.
...
Closes #2647
// FREEBIE
2015-03-12 17:53:38 -07:00
Moxie Marlinspike
534df06794
Support granular "custom" MMS preferences.
...
1) Make each MMS preference an individual choice between custom
and default.
2) Display default values.
Closes #2487
// FREEBIE
2015-03-05 18:42:34 -08:00
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
2015-03-03 12:25:09 -08:00
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.
2015-02-27 12:26:09 -08:00
Jake McGinty
5fac189736
"All images" view for conversations
...
// FREEBIE
2015-02-18 15:47:47 -08:00
Jake McGinty
242dbef54e
Prevent NPE when MMS's FROM PduHeader is missing
...
Fixes #1448
// FREEBIE
2015-02-16 13:07:30 -08:00
Moxie Marlinspike
724dced820
Define a max message length to display.
...
// FREEBIE
Closes #2294
2015-02-13 14:32:11 -08:00
AsamK
fe5fc411a7
Save drafts for recipients without an existing thread
...
- Save drafts without thread in draft database
- Clear drafts when deleting conversation(s), otherwise
the drafts stay in the database and will reappear when a thread
with the same threadId is created
Closes #1510
2015-02-13 14:16:19 -08:00
Jake McGinty
f38677794a
stop giving long-living static objects Activity contexts
...
// FREEBIE
2015-02-11 12:50:19 -08:00
Jake McGinty
b25b95f933
media constraints model
...
// FREEBIE
2015-01-12 13:20:25 -08:00
Jake McGinty
12845da91a
use PartDatabase to look up thumbnails async
...
// FREEBIE
Closes #2286
2015-01-11 18:10:53 -08:00
Moxie Marlinspike
4d8004ab21
Merge pull request #2276 from mcginty/group-meta-colors
...
group visual fixes
2014-12-29 14:37:45 -08:00
Jake McGinty
2e141b2a90
group visual fixes
...
// FREEBIE
2014-12-29 14:34:09 -08:00
Moxie Marlinspike
ed556fbd3a
Support for multi-select in the conversation list.
...
// FREEBIE
Closes #1601
Closes #2214
Fixes #2188
Fixes #786
2014-12-29 13:54:59 -08:00
guiweber
d7419caa4b
Moved several hard-coded UI strings to strings.xml
...
Closes #2203
2014-12-29 12:29:48 -08:00
Jake McGinty
121b1493cc
thumbnail generation and disk caching
...
// FREEBIE
2014-12-24 14:46:50 -08:00
Jake McGinty
b89b986a9e
use PartAuthority when fetching part streams
...
resolves the self-send case
Fixes #2259
// FREEBIE
2014-12-24 13:27:53 -08:00
Moxie Marlinspike
21591dc6b1
Fix build.
...
// FREEBIE
2014-12-23 15:42:32 -08:00
McLoo
3ec95f7a8e
More l10n - for decrypting errors
...
//FREEBIE
Closes #2231
2014-12-23 12:53:38 -08:00
Oliver Gasser
33d466a5cc
Include group titles in search
...
When searching for messages only simple threads matching the
contact names are returned as search results. With this commit
also group converstations where the group title matches the search
term are displayed in the result. This makes search results more
consistent with the conversation list as now all conversation
titles (i.e. contact names and group titles) are searched through.
Fixes #1954
Closes #2216
2014-12-23 12:40:30 -08:00
Jake McGinty
e8b947dfde
Pass recipient ids, not recipient objects
...
Fixes #2233
// FREEBIE
2014-12-22 14:53:28 -08:00
Moxie Marlinspike
d7de5415b5
Skip drafts and outbox messages during imports.
...
// FREEBIE
Closes #1468
Fixes #892
2014-12-12 19:35:52 -08:00
Jake McGinty
07bb07c342
streaming media
...
// FREEBIE
2014-12-12 18:49:32 -08:00
Jake McGinty
b05967f2c9
Show drafts in conversation list snippets
...
// FREEBIE
2014-12-11 18:27:54 -08:00
Jake McGinty
a88fbba49f
use Loader when conversation is updated instead of requery
...
// FREEBIE
2014-12-03 04:47:38 +00:00
Jake McGinty
f3f173f653
support mms basic auth
...
// FREEBIE
2014-12-02 08:59:43 +00:00
Moxie Marlinspike
d72a3ec669
Do thread trimming as JobManager job rather than AsyncTask.
...
// FREEBIE
2014-11-24 22:50:32 -08:00
Moxie Marlinspike
a85dbce041
Correctly handle PKWM via SMS.
2014-11-12 15:42:43 -08:00
Moxie Marlinspike
baaa3514d4
Fix delivery receipts in group messages.
...
Fixes #2056
Fixes #2067
Fixes #2087
2014-11-12 15:42:43 -08:00
Moxie Marlinspike
fb31319e52
Put everything under either internal or api.
2014-11-12 15:42:43 -08:00
Moxie Marlinspike
08ed90c5ec
Split out Util functions.
2014-11-12 15:42:43 -08:00
Moxie Marlinspike
0d102f76cc
Move ListenableFutureTask up to parent.
2014-11-12 15:38:23 -08:00
Moxie Marlinspike
601e233d47
Add account management interface to libtextsecure api
2014-11-12 15:28:08 -08:00
Moxie Marlinspike
cafe03a70a
Transition the outbound pipeline to JobManager jobs.
2014-11-12 15:26:25 -08:00
Moxie Marlinspike
99f42e2ee1
Move API around.
2014-11-12 15:21:32 -08:00
Moxie Marlinspike
a3f1d9cdfd
Beginning of libtextsecure refactor.
...
1) Break out appropriate components.
2) Switch the incoming pipeline from SendReceiveService to
the JobManager.
2014-11-12 15:21:32 -08:00
Jake McGinty
ff2ac8a66e
refactor ListenableFutureTask and make saves async
...
// FREEBIE
2014-10-28 02:25:41 -05:00
Jake McGinty
53da1f849a
in-app image media preview
...
// FREEBIE
2014-10-28 00:50:01 -05:00
Moxie Marlinspike
9768de2d5e
Short circuit self-send.
...
// FREEBIE
2014-10-22 18:28:03 -07:00
Moxie Marlinspike
b568ce70b2
Make delivery receipts work correctly for groups.
2014-10-20 21:06:34 -07:00
Moxie Marlinspike
73d896f378
Index shouldn't be unique.
2014-10-20 19:02:42 -07:00
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.
2014-10-20 19:02:42 -07:00
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.
2014-10-20 12:25:38 -07:00
Moxie Marlinspike
14b8f97de2
Reorganize session store load/store operations.
2014-10-20 12:14:17 -07:00
Moxie Marlinspike
d902c12941
Break core ratchet out into libaxolotol.
...
1) Break the core cryptography functions out into libaxolotol.
2) The objective for this code is a Java library that isn't
dependent on any Android functions. However, while the
code has been separated from any Android functionality,
it is still an 'android library project' because of the
JNI.
2014-10-20 12:10:02 -07:00
Jake McGinty
b5941fb3fd
actually fallback when mms local params unset
...
// FREEBIE
2014-10-15 17:14:12 -07:00
Jake McGinty
89fb80fcc5
MmsConnection refactor
...
- Use Apache HttpClient v4.x, only library that seems to like HTTP proxies
- Remove custom redirect logic in favor of library's
Fixes #1904
// FREEBIE
2014-10-13 12:26:38 -07:00
Jake McGinty
7316f17674
don't crash if we can't get an mccmnc
...
Fixes #1916
// FREEBIE
2014-09-14 17:46:07 -07:00
Jake McGinty
a0842f329f
disable localized collators in ApnDB
...
// FREEBIE
2014-08-20 13:41:59 -07:00
Jake McGinty
9b495d8c83
prevent another cursor leak
...
// FREEBIE
2014-08-20 12:29:40 -07:00
Moxie Marlinspike
5264ebed67
Avoid leaking cursor.
...
// FREEBIE
Closes #1838
2014-08-20 10:36:39 -07:00
Jake McGinty
7f51f9fd5b
apntool and ApnDatabase
...
// FREEBIE
2014-08-20 10:36:39 -07:00
McLoo
acc7c4c1c6
Null check for cipher text to prevent NPE on decryption
...
Fixes #1703
Closes #1728
// FREEBIE
2014-07-26 23:02:11 -07:00
Moxie Marlinspike
40698212bb
Create a Curve25519 asymmetric master secret for users without.
...
Fixes #1701
2014-07-18 22:16:12 -07:00
Jake McGinty
f6e04d0f89
use latest android number as recipient number
...
Fixes #791
// FREEBIE
2014-07-14 16:22:15 -07:00
McLoo
d429f9113b
Replace XML serializer in plaintext export
...
Fixes #342
- using regex pattern/matcher to escape chars below 0x0020 and
above 0xd7ff
- using String.Replace to escape XML entities
- changed XmlPullParser from Xml.newPullParser() to
XmlPullParserFactory parser to fix import on GB
2014-06-24 13:02:36 -07:00
Jake McGinty
34e147838a
use apply for preferences instead of commit
...
// FREEBIE
2014-06-12 14:45:51 -07:00
Moxie Marlinspike
d51adab76b
Use "date sent" as timestamp for push, "date received" for SMS.
...
The "sent time" is not reliable on SMS messages. This switches
to using "sent time" by default for push messages, but "received
time" for SMS messages.
2014-06-12 08:59:54 -07:00
Moxie Marlinspike
c719a48a2c
Move media attachment long-click event to context menu.
...
Long-click on a media attachment will now bring up the normal
context menu for a ConversationItem long-click, but with the
addition of a "save attachment" option.
This allows users to long-click on messages with media in them
and still see the other contextual menu options.
// FREEBIE
2014-06-11 18:04:14 -07:00
Moxie Marlinspike
68747142d6
Add correct contextual menu options on 'Send' button.
...
[Send TextSecure message | Send unencrypted SMS | Send encrypted SMS]
// FREEBIE
2014-06-11 15:34:01 -07:00
Moxie Marlinspike
0574ec170a
Display legacy message error when V1 message is received.
2014-04-16 11:47:51 -07:00
Moxie Marlinspike
1d07ca3e6f
Remove V1 code.
2014-04-16 11:47:51 -07:00
Jake McGinty
b715debefc
mark auto-fallback to sms as forcedSms
...
// FREEBIE
2014-04-10 10:50:35 -07:00
Jake McGinty
832763f695
UX for unencrypted fallback case
2014-04-02 22:10:51 -07:00
Moxie Marlinspike
fd1a18d2d0
Don't display duplicate push messages.
2014-04-02 22:10:50 -07:00
Moxie Marlinspike
b860aeff85
Minor ConversationList scrolling optimization.
2014-03-16 14:36:21 -07:00
Jake McGinty
d827ab1b36
more precise sms controls
...
// FREEBIE
2014-03-13 20:59:20 -07:00
Pat McLaughlin
d229a4274c
Also check cc for duplicates
2014-03-12 20:49:55 -04:00
Moxie Marlinspike
0b4fe84a41
Format-neutral compare numbers in MMS group with local device.
...
Closes #1018
2014-03-07 13:05:35 -08:00
Moxie Marlinspike
3b25b87aa8
Fix for NPE
2014-02-26 12:42:16 -08:00
Moxie Marlinspike
43c1576aab
Fix for bad database migration.
2014-02-24 17:00:52 -08:00
Moxie Marlinspike
5000957b99
Listen for group updates, fix group updates, and Recipient marshing
2014-02-24 00:19:54 -08:00
Jake McGinty
86b3de2a93
group updates do things
...
// FREEBIE
2014-02-23 21:18:08 -08:00
Moxie Marlinspike
315cf2d8e4
Eliminate concept of group 'owner'.
2014-02-22 11:29:28 -08:00
Moxie Marlinspike
da57a689c1
Fill in some strings.
...
// FREEBIE
2014-02-22 11:10:30 -08:00
Moxie Marlinspike
9c9866e7ee
Add 'leave group' functionality. Includes other bug fixes.
2014-02-22 10:54:43 -08:00
Moxie Marlinspike
a6e1d56cde
Refactor group messaging protocol.
...
// FREEBIE
2014-02-21 17:51:52 -08:00
Jake McGinty
7beab36c6a
updates to conversation menu, and updating of group info
...
// FREEBIE
2014-02-21 11:33:31 -08:00
Moxie Marlinspike
ccd1691b22
Make 'push' status a type bit on both incoming and outgoing msgs.
2014-02-20 23:00:38 -08:00
Moxie Marlinspike
3ca25de034
Fix for MMS decoding when no SIM is available.
2014-02-20 17:32:01 -08:00
Moxie Marlinspike
ff238a1ce9
Indicate a message was delivered via push in its delivery status.
2014-02-20 16:14:58 -08:00
Moxie Marlinspike
9614dc9055
Refactor group database model and flow.
...
1) Use existing DB types instead of adding new columns.
2) Store group attributes in message body, like everything else.
2014-02-19 21:07:47 -08:00
Moxie Marlinspike
19dddd7adf
Support for an 'end session' protocol message.
...
1) On the push side, this message is a flag in PushMessageContent.
Any secure message with that flag will terminate the current
sessin.
2) On the SMS side, there is an "end session" wire type and
the convention that a message with this wire type must be
secure and contain the string "TERMINATE."
2014-02-19 13:50:32 -08:00
Jake McGinty
e15ff6193f
unbreak group insertion for new installs
2014-02-17 20:10:37 -08:00
Moxie Marlinspike
b9f4fba98a
Handle identity key mismatch on outgoing group messages.
...
Additionally, make the group creation process asynchronous.
2014-02-17 11:43:37 -08:00
Moxie Marlinspike
e7e5bc0884
Verify identity keys on outgoing messages.
...
If PreKeyEntity identity key doesn't match local DB, fail
outgoing message and queue "incoming" identity key update
message for manual user approval.
2014-02-16 15:23:49 -08:00
Moxie Marlinspike
4e703d5a00
Correct retry logic for SMS JB+ and for push groups.
2014-02-15 18:31:25 -08:00
Moxie Marlinspike
a305bb80e6
Correctly display group members
2014-02-15 11:30:20 -08:00
Moxie Marlinspike
2f98622948
Fix group migration.
2014-02-14 16:18:18 -08:00
Moxie Marlinspike
067799be06
Display group actions and correctly handle group delivery.
2014-02-14 15:59:57 -08:00
Moxie Marlinspike
7c46f3cbf8
Fill in group creation actions
2014-02-13 17:10:20 -08:00
Moxie Marlinspike
0ace469d74
Support for multi-device.
...
1) In addition to the Recipient interface, there is now
RecipientDevice. A Recipient can have multiple corresponding
RecipientDevices. All addressing is done to a Recipient, but
crypto sessions and transport delivery are done to
RecipientDevice.
2) The Push transport handles the discovery and session setup
of additional Recipient devices.
3) Some internal rejiggering of Groups.
2014-02-02 19:38:06 -08:00
Moxie Marlinspike
49daa45dca
wip
2014-01-14 00:26:43 -08:00
Jake McGinty
28c1c5006b
icon, contact list and conversation redesign
2014-01-09 19:06:41 -10:00
Moxie Marlinspike
dde2d2564a
Fix rebase errors
2014-01-06 19:49:35 -08:00
Moxie Marlinspike
44092a3eff
Support for Axolotl protocol.
...
1) Split code into v1 and v2 message paths.
2) Do the Axolotl protocol for v2.
3) Switch all v2 entities to protobuf.
2014-01-06 14:37:52 -08:00
Moxie Marlinspike
4380b46a35
Correctly update MMS security status.
2014-01-06 14:37:51 -08:00
Moxie Marlinspike
fde8d32848
Subtle rebase conflicts...
2014-01-06 14:37:51 -08:00
Moxie Marlinspike
dadabdfaa8
Make UI responsive to UniversalTransport upgrades.
2014-01-06 14:36:23 -08:00
Moxie Marlinspike
c38a8aa699
Migrate to Curve25519.
...
1) Generate a Curve25519 identity key.
2) Use Curve25519 ephemerals and identities for v2 3DHE agreements.
3) Initiate v2 key exchange messages.
4) Accept v1 key exchange messages.
5) TOFU Curve25519 identities.
2014-01-06 14:36:22 -08:00
Moxie Marlinspike
073b1f69e3
Rollbacks, v2 sms-transport key exchanges, push identity conflicts.
...
1) Stop protocol rollbacks.
2) Handle v2 version key exchange messages.
3) Handle identity key conflicts on prekeybundle messages.
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
5e6d39beea
Move classes into library
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
8f6590b738
Handle notifications and receiving push when locked.
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
0dd36c64a4
Basic support for encrypted push-based attachments.
...
1) Move the attachment structures into the encrypted message body.
2) Encrypt attachments with symmetric keys transmitted in the
encryptd attachment pointer structure.
3) Correctly handle asynchronous decryption and categorization of
encrypted push messages.
TODO: Correct notification process and network/interruption
retries.
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
7f642666dd
Basic support for prekeybundle message delivery and receipt.
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
b8f663b69c
Move common crypto classes into TextSecureLibrary.
...
1) Move all the crypto classes from securesms.crypto.
2) Move all the crypto storage from securesms.database.keys
3) Replace the old imported BC code with spongycastle.
2014-01-06 14:35:51 -08:00
Moxie Marlinspike
2042ca6cb7
Generate "prekeys" at push registration time.
...
This generates a large number of key exchange messages and
registers them with the server during signup.
2014-01-06 14:34:47 -08:00
Moxie Marlinspike
9287d413ac
Support for incoming attachments.
...
1) Refactored MMS layer to use abstracted types.
2) Added support for retrieving attachment IDs.
2014-01-06 14:33:52 -08:00
Moxie Marlinspike
fd045f2354
Refactor MMS send/download to be synchronous.
...
1) Make the radio change a synchronous action with a timeout.
2) Move the send logic into an MmsTransport, in preparation for
UniversalTransport composition.
3) Move the download logic into a synchronous receiver.
2014-01-06 14:33:52 -08:00
Moxie Marlinspike
1ac06312a0
Move directory and push service socket into library.
2014-01-06 14:21:50 -08:00
Moxie Marlinspike
a200d29514
Move most of Util into library
2014-01-06 14:21:50 -08:00
Moxie Marlinspike
21eee19380
Split into library project and add shared preferences layer of indirection.
2014-01-06 14:20:59 -08:00
Moxie Marlinspike
7489f3463a
Change the way notifications work for non-default KitKat.
...
Messages that are not "secure" (encrypted or key exchange) are
automatically marked as read if TextSecure isn't the default
KitKat SMS app.
This change in functionality allows people who aren't using
TextSecure as a default SMS app on KitKat to still receive
notifications when they get incoming encrypted messages.
2013-12-07 11:03:25 -08:00
rhodey
2c2a03e5e2
Enhanced MMS configuration prompts and processing.
...
1) Added a new message status to MmsDatabase to
signify a pending MMS download which requires
APN settings.
2) Added a database method to query MMS messages
based on status.
3) Added login to SendReceiveService for processing
of MMS pending APN information.
4) Moved all APN/MMS settings into ApnPreferencesActivity
and transformed PromptApnActivity into a simple
informational activity.
5) Added logic to check for APN settings on send and
receive of all MMS (media, group, email) and direct
user to PromptApnActivity then ApnPreferencesActivity
if necessary.
6) Vocab/grammar adjustments.
2013-10-20 16:56:34 -07:00
Ruben Pollan
04eafd5fab
Allow to resend a failed message
...
Add an option to the context menu of the message to resend it if it has
failed.
2013-10-13 15:39:15 +02:00
Moxie Marlinspike
aa25f94291
Enhanced import/export support.
...
1) Allow imports from the stock SMS database at any time.
2) Provide plaintext export support, in a format compatible with
the "SMS Backup And Restore" app.
3) Fix the DB weirdness on encrypted restore that previously
required killing the app.
2013-06-24 21:02:30 -07:00
Moxie Marlinspike
0534f9d95a
Fix for NPE on null FROM in MMS header.
2013-05-30 20:29:13 -07:00
Moxie Marlinspike
24fc93e9ae
Switch to a more heavily TOFU model for identity keys.
...
1) There is no longer a concept of "verified" or "unverified."
Only "what we saw last time" and "different from last time."
2) Let's eliminate "verify session," since we're all about
identity keys now.
3) Mark manually processed key exchanges as processed.
2013-05-23 16:36:24 -07:00
Moxie Marlinspike
e080449383
Fix for NPE on import
2013-05-21 13:25:44 -07:00
Moxie Marlinspike
3df67a1643
Properly return unknown recipient from SMS db on empty.
2013-05-21 10:23:27 -07:00
Moxie Marlinspike
be34f30719
Lower maximum size of cursor window on DB upgrade.
...
On some systems, the DB upgrade was failing because there were
too many rows for the cursor window. This moves some looping
operations into single update statements by using the substr()
command, and chunks the rest using a series of LIMITs.
2013-05-16 13:16:42 -07:00