mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-09-30 00:29:00 +01:00
Synchronize with paired devices when a contact changes.
// FREEBIE
This commit is contained in:
@@ -15,6 +15,7 @@ import org.thoughtcrime.securesms.database.DatabaseFactory;
|
||||
import org.thoughtcrime.securesms.database.NotInDirectoryException;
|
||||
import org.thoughtcrime.securesms.database.TextSecureDirectory;
|
||||
import org.thoughtcrime.securesms.jobs.DirectoryRefreshJob;
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceContactUpdateJob;
|
||||
import org.thoughtcrime.securesms.push.TextSecureCommunicationFactory;
|
||||
import org.thoughtcrime.securesms.recipients.Recipients;
|
||||
import org.thoughtcrime.securesms.util.DirectoryHelper.UserCapabilities.Capability;
|
||||
@@ -59,13 +60,9 @@ public class DirectoryHelper {
|
||||
private static final String TAG = DirectoryHelper.class.getSimpleName();
|
||||
|
||||
public static void refreshDirectory(final Context context) throws IOException {
|
||||
refreshDirectory(context, TextSecureCommunicationFactory.createManager(context));
|
||||
}
|
||||
|
||||
public static void refreshDirectory(final Context context, final TextSecureAccountManager accountManager)
|
||||
throws IOException
|
||||
{
|
||||
refreshDirectory(context, accountManager, TextSecurePreferences.getLocalNumber(context));
|
||||
refreshDirectory(context,
|
||||
TextSecureCommunicationFactory.createManager(context),
|
||||
TextSecurePreferences.getLocalNumber(context));
|
||||
}
|
||||
|
||||
public static void refreshDirectory(final Context context, final TextSecureAccountManager accountManager, final String localNumber)
|
||||
@@ -92,7 +89,14 @@ public class DirectoryHelper {
|
||||
}
|
||||
|
||||
try {
|
||||
DatabaseFactory.getContactsDatabase(context).setRegisteredUsers(account.get(), e164numbers);
|
||||
boolean modified = DatabaseFactory.getContactsDatabase(context)
|
||||
.setRegisteredUsers(account.get(), e164numbers);
|
||||
|
||||
if (modified && TextSecurePreferences.isMultiDevice(context)) {
|
||||
ApplicationContext.getInstance(context)
|
||||
.getJobManager()
|
||||
.add(new MultiDeviceContactUpdateJob(context));
|
||||
}
|
||||
} catch (RemoteException | OperationApplicationException e) {
|
||||
Log.w(TAG, e);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user