Commit Graph

95 Commits (1d2e8072a09d6e3017b188be1faa3e8288018f6e)

Author SHA1 Message Date
Niels Andriesse 1d2e8072a0 Fix build 6 years ago
Niels Andriesse d6cf9b573e Use Signal's job framework for background polling 6 years ago
Niels Andriesse daa1248e6c Debug session handling 6 years ago
Niels Andriesse ca370211f8 Resolve TODO 6 years ago
Niels Andriesse e7f7c3cdb2 Hook up message receiver 6 years ago
Niels Andriesse 26ba7fb387 Update for core changes 6 years ago
Niels Andriesse ab68ae2e58 Group Loki logic together in ApplicationContext 6 years ago
Mikunj 6928bfa2ae Added long polling 6 years ago
Niels Andriesse c8cc22e8fe WIP 6 years ago
Greyson Parrelli 7b4299d5da Bring back conscrypt, improve provider initialization ordering. 6 years ago
Greyson Parrelli ecea6abeb6 Temporary revert (again) to fix an avatar retrieval issue.
This reverts commit 77524ae1f2.
6 years ago
Greyson Parrelli 77524ae1f2 Revert "Temporary revert to fix an avatar retrieval issue."
This reverts commit 267bc32e23.
6 years ago
Francois Blackburn d2ece1c1f2 Add MI 5 to hardware AEC blacklist 6 years ago
Arnt Gulbrandsen 8bdc257963 Avoid hardware echo cancellation for Fairphone FP2
The issue has as been confirmed by me with the stock ROM as of November
2018, and other users have complained for almost 18 months, see
https://forum.fairphone.com/t/fnord/28849 and
https://bugtracker.fairphone.com/project/fairphone-fairphone-os-android-6/issue/77
6 years ago
Greyson Parrelli 4a3c173adb Migrated to new JobManager. 6 years ago
Greyson Parrelli 11a2ed0743 Increase reliability of locally logging crashes.
Exception logging tends to be race-y, so now we block and wait
for all logs to be written before continuing with the crash.
6 years ago
Greyson Parrelli 267bc32e23 Temporary revert to fix an avatar retrieval issue.
This reverts commit 8aa185070b.
6 years ago
Alan Evans a7aa980e58 New dynamic locale system.
- Fixes #7619
6 years ago
Moxie Marlinspike 8aa185070b Update libsignalservice to 2.13.0
- Eliminate the explicit spongycastle dependency. All access to
  primitives is done through the JCE interfaces now, which allows
  us to use a secure native-backed provider like conscrypt.

- Use conscrypt for our default security provider. This gives us
  fast TLS 1.2 and 1.3 support on all devices, even before they
  had platform support (like 4.4).

- Update minSdk to 18. Unfortunately the JCE interfaces for GCM
  primitives are JDK 7+ (!) only, which became supported by Android
  at 18.
6 years ago
Greyson Parrelli a122bb4899 Created new BlobProvider.
One unified place to create blobs for different lifespans.
6 years ago
Greyson Parrelli 1c23603c25 Add the Redmi Note 5 to the hardware AEC blacklist. 6 years ago
Greyson Parrelli c5114e2cb3 Updated to WebRTC M71. 6 years ago
Greyson Parrelli d482c60a98 Switch from GCM to FCM. 6 years ago
Greyson Parrelli c76081d99c Added support for link previews. 6 years ago
Greyson Parrelli 7c66c4a4f7 Updated logging. 6 years ago
Greyson Parrelli 776b0e23ae Add support for typing indicators. 7 years ago
Greyson Parrelli 2acab563d9 Support for sealed sender - Part 2 7 years ago
Moxie Marlinspike 5f31762220 Support for sealed sender - Part 1 7 years ago
Greyson Parrelli ae9c53bdf8 Ensure jobs have a Context during onAdded().
Fixes a crash.
7 years ago
Greyson Parrelli 45e0bb281f Turn MessageRetrievalService into IncomingMessageObserver.
Due to an Android P bug, we basically need to stop calling
startService() in onResume()/onPause(). That means I had to turn
MessageRetrieval service into a singlton instead of a service. I also
moved the offending KeyCachingService calls into static methods that
didn't have to start the service.
7 years ago
Greyson Parrelli 0d48f10806 Fix issue where a Job had null JobParameters. 7 years ago
Greyson Parrelli 1b736e9e04 Ensure notifications are processed after receiving GCM message.
It's unreliable to run these tasks on WorkManager, as there's no
scheduling guarantees.
7 years ago
Greyson Parrelli 07d7af6e75 Initialize WorkManager ourself.
This gives us more control over when it happens, as well as lets us set
things like the debug level. Also let's us get rid of the synchronized
block we had in Application#onCreate().
7 years ago
Greyson Parrelli 87e6aa48bb Schedule jobs with WorkManager.
Should help solve most of our pressing targetSdk=26 migration issues.
7 years ago
Greyson Parrelli dbd42c4af2 Add notification channel support.
Bucket our notifications into channels. Required to target API 26.
7 years ago
Greyson Parrelli a498176043 Switch logs to use new Log class. 7 years ago
Greyson Parrelli acb40c6133 Added new logger.
Added a new logger that persists logs for a longer duration to the
user's cache directory. Logs are encrypted. The new logs are sent
in addition to the user's logcat output.
7 years ago
floesche df9833472f Add z5 compact (E5823) to AEC blacklist
Following fixes for other models to reduce echo on callee side during Signal call. 

The problem has been reported for this model for example in #6241
7 years ago
Greyson Parrelli bf692e8da3 Throttle background contact syncs to once every 6 hours.
Unfortunately, there's apps out there that trigger contact changes
very frequently. Because we listen to the system for contact
changes to tell us when to sync, that could result in us sending
an abundance of contact syncs to linked desktop instances.

This throttles contact sync requests using the following methodology:

- By default, throttle contact syncs to 6 hrs while the app is
  backgrounded.
- If a sync is throttled in the background, we set a dirty flag and
  will execute the sync the next time the app is foregrounded.
- Syncs explicitly requested by desktop are never throttled.
7 years ago
b0m0x 2290549349 add Mi A1 to hardware AEC blacklist
See #7635
7 years ago
2-4601 f1d8fd8838 Add devices to hardware AEC blacklist
- Moto G4
- Nokia 5 (TA-1053)

Alleviates #7635
7 years ago
Greyson Parrelli 42f1baaf61 Imported JobManager as a source dependency.
We have to make some changes, and it's gotten to the point where
maintaining it as a separate library is more hassle than it's worth,
especially with Google releasing WorkManager as the preferred job
scheduling library.
7 years ago
Moxie Marlinspike 2a1ce859c4 Add Moto G (5S) Plus to hardware AEC blacklist
For #7635
7 years ago
Moxie Marlinspike 24e573e537 Support for full backup/restore to sdcard 7 years ago
Moxie Marlinspike 18aa202695 Really really delay SMS processing until sqlcipher migration completes
Blocking the SMS job on the screen lock isn't enough, since then
the job races against the migration.

Fixes #7390
7 years ago
Moxie Marlinspike 59092e2ec0 No need for an encrypted serializer any longer 7 years ago
Moxie Marlinspike a798f97aa3 Update to webrtc M64 7 years ago
Moxie Marlinspike 17dd681dc8 Run all AsyncTasks on thread pool executor
Should Fix #7002
8 years ago
Moxie Marlinspike e452862813 Catch unsatisfied link error on start if webrtc so isn't found
// FREEBIE
8 years ago
Moxie Marlinspike 72afb33c1b Add Moto G5 to hardware AEC blacklist
For #6241
// FREEBIE
8 years ago