Moxie Marlinspike
f36b296e2e
Migrate from SQLite and ciphertext blobs to SQLCipher + KeyStore
2018-01-30 17:27:05 -08:00
Moxie Marlinspike
e60715587f
Update service lib to 2.7.0
2018-01-18 10:01:41 -08:00
Moxie Marlinspike
512dc19471
Fix dynamic permissions problem for MMS messages
2017-12-20 11:21:00 -08:00
Moxie Marlinspike
4de14a5dc1
Only use startForegroundService for initial service construction
2017-12-15 09:45:00 -08:00
Moxie Marlinspike
261d187567
Don't perform multi-device contact update without contact perms
2017-12-08 14:36:36 -08:00
Moxie Marlinspike
27e11e9627
Make sure we have SEND_SMS permission before sending an SMS
...
Fixes #7246
2017-12-05 11:35:15 -08:00
Moxie Marlinspike
acfc9d75e0
Use startForegroundService instead of startService on Android 8
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
7a5846a6d4
Move more system contact info into recipient database
...
1) Move contact URI, contact photo URI, and custom label
into recipient database, so there are no longer any
contact DB queries during Recipient object loading.
2) Use a SoftHashMap so that any referenced Recipient objects
can't get kicked out of the cache.
3) Don't load Recipient objects through the provider during sync.
This was a super expensive thing to do, and blew up the cache.
4) Only apply changes to Recipient objects during sync if they
are in the cache. Otherwise, there should be no outstanding
references, and the changes are fine going exclusively to
the DB.
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
64c8b4b2ef
Support for selective permissions
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
f855e161d9
Ensure notifications for new users won't be generated first fetch
2017-11-30 10:26:41 -08:00
haffenloher
3df9112cf8
Fix synced sent media messages expiring too fast
...
Fixes #6928
Closes #7135
2017-11-01 15:56:46 -07:00
Moxie Marlinspike
6d88710a88
Update to libsignal-service 2.6.11
...
// FREEBIE
2017-11-01 15:56:31 -07:00
Moxie Marlinspike
b80408bcb4
Use Glide for all contact photo caching
...
// FREEBIE
2017-10-11 17:47:12 -07:00
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
856a4d2860
Process configuration request messages
...
// FREEBIE
2017-10-02 12:39:44 -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
d0e781ccb4
Sync read receipt configuration to sibling devices
...
// 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
b7109e9ebb
Fix for NPE if MMS notification has no transaction ID
...
// FREEBIE
2017-09-13 16:38:02 -07:00
Moxie Marlinspike
93395c3ff4
Include own profile key in normal contact sync
...
// FREEBIE
2017-09-12 22:49:30 -07:00
Moxie Marlinspike
08948fe05a
Don't create groups for 1:1 MMS conversations
...
Fixes #6947
// FREEBIE
2017-09-10 11:13:53 -07:00
Moxie Marlinspike
989ea4042c
MMS group includes the sender
...
Fixes #6942
// FREEBIE
2017-09-08 11:19:57 -07:00
Moxie Marlinspike
962fb60ffb
Don't synchronize MMS groups to sibling devices
...
Fixes #6934
// FREEBIE
2017-09-07 11:12:57 -07:00
Moxie Marlinspike
2add02c62f
Add splash screen for setting profiles
...
// FREEBIE
2017-09-03 19:45:43 -07:00
Moxie Marlinspike
3e3ae5f865
Adjust profile key sharing based on sync messages
...
// FREEBIE
2017-08-28 17:57:07 -07:00
Moxie Marlinspike
d0cd2621ca
Only process messages if a body is present
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
51c1e4485f
Support for profile key syncing to sibling devices
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
64ad9ec9dd
Add group profile sharing logic
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
f17af19d09
Access all RecipientDatabase settings directly from Recipient
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
d1790dfe17
Rename RecipientPreferences -> RecipientSettings
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
8e6ca53023
Rename RecipientPreferencesDatabase -> RecipientDatabase
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
6924f0519e
No need for a RecipientFactory any longer
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
5942e93a33
Share profile key when initiating a conversation
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
df99deb480
Insert profile creation into registration flow, fix capture
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
77a216b705
Support for retrieving and storing profile information
...
Initial support for sharing profile keys
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
1893047a78
Profile creation activity
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
da94fd5f9e
Join group information into conversation list query
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
5a5e47f2df
Move "directory" information into RecipientPreferencesDatabase
...
// 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
422b4c345b
Catch IllegalArgumentException thrown internally on some devices
...
// FREEBIE
2017-08-10 12:17:05 -07:00
Moxie Marlinspike
25a30d63a5
A blocked contact doesn't necessarily have to be a number
...
// FREEBIE
2017-08-07 12:27:34 -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
4229c21bdc
Fix NPE on contact update request
...
Fixes #6840
// FREEBIE
2017-08-01 08:57:26 -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
5be246ec8f
Fix NPE for SMS pdus that could potentially be null
...
// FREEBIE
2017-07-21 16:11:55 -07:00
Moxie Marlinspike
82b5b35d3b
Eliminate MediaNetworkRequirement style attachment job handling
...
// FREEBIE
2017-07-21 15:59:27 -07:00
Moxie Marlinspike
2c4c0f1349
Archive sessions and generate new registration id on re-register
...
Fixes #6703
// FREEBIE
2017-07-05 13:13:53 -07:00
Moxie Marlinspike
074e46b2d9
Enable verification syncing
...
// FREEBIE
2017-06-23 13:59:06 -07:00
Moxie Marlinspike
a0e23612d4
We need to disable this until push notifications contain more info
...
This could be a sync message, delivery receipt, or some other
message that isn't user-visible. The push notification content
would need to indicate whether that's the case in order to be
able to accurately display a notification
// FREEBIE
2017-06-20 10:57:11 -07:00
Moxie Marlinspike
0f6823d37e
Null check just in case the profile comes back empty
...
// FREEBIE
2017-06-14 09:35:32 -07:00
Moxie Marlinspike
1eccc07673
Temporarily disable synchronization messages
...
Until desktop catches up
// FREEBIE
2017-06-12 09:47:58 -07:00
Moxie Marlinspike
76c28cfa7a
Add support for SN verification
...
// FREEBIE
2017-06-09 19:58:01 -07:00
Moxie Marlinspike
711740d156
Update to libsignal-service 2.5.10
...
// FREEBIE
2017-06-02 09:49:29 -07:00
Moxie Marlinspike
b50a3fa2b8
Actually handle busy signal correctly
...
// FREEBIE
2017-06-01 13:11:48 -07:00
Moxie Marlinspike
d413b80b15
Canonicalize number when retrieving profile
...
// FREEBIE
2017-05-31 14:51:48 -07:00
Moxie Marlinspike
73410f64b5
Display a notification when unable retrieve messages for push
...
Fixes #6684
// FREEBIE
2017-05-31 14:51:48 -07:00
Moxie Marlinspike
cd55feb2b9
Update signal-service to 2.5.9
...
// 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
4509077338
Lollipop MMS API doesn't seem to work reliably until L_MR1
...
Fixes #6663
Fixes #6668
// FREEBIE
2017-05-24 10:52:08 -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
1c8c6d5f85
Be sure to canonicalize numbers when updating groups
...
// FREEBIE
2017-05-09 17:46:07 -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
438a78ed30
Switch jobs with network requirement to timed wakelock
...
// FREEBIE
2017-04-21 23:05:59 -07:00
Moxie Marlinspike
92ea7549d4
Make UpdateApkJob use a timed wakelock
...
Fixes #6514
// FREEBIE
2017-04-10 09:25:52 -07:00
Moxie Marlinspike
f67eb5f9f3
Support for receiving arbitrary attachment types
...
// FREEBIE
2017-03-29 18:17:34 -07:00
Moxie Marlinspike
0d11b3dd26
Lets limit GCM refresh to every 6hrs, and only retry once
...
// FREEBIE
2017-03-17 10:40:34 -07:00
Benedikt Constantin Radtke
742b54f32d
fix ContactUpdates for non-e164 contacts
...
convert every number to e164 before sending it to slaves/siblings.
Closes #6310
2017-03-16 14:25:47 -07:00
Paride Legovini
1c9715f700
More RedPhone cleanup
...
Closes #6393
// FREEBIE
2017-03-15 16:59:46 -07:00
Moxie Marlinspike
a8366387ab
Fix the build
...
// FREEBIE
2017-03-14 15:47:08 -07:00
haffenloher
66c9fd44df
Honor synced end session messages
...
Fixes #5174
Closes #5178
2017-03-14 14:07:18 -07:00
Moxie Marlinspike
94964474b2
So long redphone
...
// FREEBIE
2017-03-14 13:24:24 -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
bb5e7db57e
We don't need to refresh attributes in redphone any longer
...
// FREEBIE
2017-03-13 11:50:10 -07:00
Moxie Marlinspike
cbba8c0d76
Update signal-service
...
// FREEBIE
2017-03-09 17:31:03 -08:00
Moxie Marlinspike
b110c8a2cb
Reregister GCM on every app start
...
Fixes #5531
// FREEBIE
2017-03-06 11:50:51 -08:00
Moxie Marlinspike
9b8719e2d5
Support for website distribution build with auto-updating APK
...
// FREEBIE
2017-02-27 23:53:36 -08:00
Moxie Marlinspike
79e925051a
Support for attachment digests
...
// FREEBIE
2017-02-26 11:16:01 -08:00
Moxie Marlinspike
8cd50d1e82
Update last seen state on desktop sync send
...
// FREEBIE
2017-02-22 15:05:35 -08:00
Moxie Marlinspike
1669731329
Support for using Signal without Play Services
...
This is now possible with beta calling, so non-GCM users are a
part of beta calling by default.
// FREEBIE
2017-02-20 12:00:03 -08:00
Moxie Marlinspike
1b1470aae2
Upgrade to EventBus 3.X
...
// FREEBIE
2017-02-19 12:29:33 -08:00
Moxie Marlinspike
d2eebbc55a
Little bit of extra SmsListener logging
...
Related #5253
// FREEBIE
2017-02-19 12:29:33 -08:00
haffenloher
9395f7faa0
Correct PushGroupUpdateJob's TAG
...
Closes #6166
// FREEBIE
2017-02-19 12:29:33 -08:00
Benedikt Constantin Radtke
85aa5c5b97
use canonical number when sending blocked updates
...
MultiDeviceBlockedUpdates now send e164 numbers instead
of localized ones.
Fixes #6093
Closes #6109
// FREEBIE
2017-02-01 13:55:52 -08:00
Moxie Marlinspike
ea0945d406
Beta support for webrtc video and voice calling
...
// FREEBIE
2017-02-01 13:55:52 -08:00
Moxie Marlinspike
7e51d61c79
Ignore duplicate signal messages
...
Fixes #5579
// FREEBIE
2017-01-22 14:47:02 -08:00
Moxie Marlinspike
cb23e3a930
Untrusted identity is not always a legacy message content
...
Closes #5924
Fixes #5922
// FREEBIE
2017-01-12 10:33:23 -08:00
Moxie Marlinspike
bb5dcb7131
Start increasing frequency of signed prekey rotation
...
// FREEBIE
2017-01-06 09:19:58 -08:00
Benedikt Constantin Radtke
a6488b3652
fix zero length attachments crashing signal
...
Fixes #5331
Closes #5926
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
f3f2f29b23
Fix avatar download crash bug
...
Fixes #5980
// FREEBIE
2016-12-21 09:58:45 -08:00
Moxie Marlinspike
541718fd11
Support for censorship circumvention in Egypt and UAE
...
// FREEBIE
2016-12-20 09:55:52 -08:00
Moxie Marlinspike
f871d83e68
No need to run this job on install
...
// FREEBIE
2016-12-16 09:10:44 -08:00
Moxie Marlinspike
01bc2ebde4
Don't print safety number changes in inactive groups
...
Fixes #5930
// FREEBIE
2016-12-14 16:20:09 -08:00
Benedikt Constantin Radtke
d9ff5b00b7
fix NPE in PushGroupUpdateJob
...
Fixes #5919
Closes #5921
// FREEBIE
2016-12-04 18:06:25 -08:00
Moxie Marlinspike
cf01959e16
Support recovering forgotten/unknown group info from sender
...
Closes #5876
// FREEBIE
2016-12-01 10:34:47 -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
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
2016-11-24 08:09:34 -08:00
Moxie Marlinspike
0abe56171a
Enable non-blocking safety number changes
...
// FREEBIE
2016-11-11 19:07:35 -08:00
Moxie Marlinspike
8d44a145f0
Start expiration timer when marked read from notification
...
// FREEBIE
2016-10-10 11:13:37 -07:00