mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 00:59:49 +01:00
Initial pass to properly check multi-device environment in various spots.
This commit is contained in:
@@ -30,8 +30,13 @@ internal class AepMigrationJob(
|
||||
return
|
||||
}
|
||||
|
||||
if (SignalStore.account.isLinkedDevice) {
|
||||
Log.i(TAG, "Not primary, skipping.")
|
||||
return
|
||||
}
|
||||
|
||||
AppDependencies.jobManager.add(Svr2MirrorJob())
|
||||
if (SignalStore.account.hasLinkedDevices) {
|
||||
if (SignalStore.account.isMultiDevice) {
|
||||
AppDependencies.jobManager.add(MultiDeviceKeysUpdateJob())
|
||||
}
|
||||
AppDependencies.jobManager.add(StorageForcePushJob())
|
||||
|
||||
@@ -59,7 +59,7 @@ public class StickerLaunchMigrationJob extends MigrationJob {
|
||||
|
||||
jobManager.add(StickerPackDownloadJob.forInstall(pack.getPackId(), pack.getPackKey(), false));
|
||||
|
||||
if (SignalStore.account().hasLinkedDevices()) {
|
||||
if (SignalStore.account().isMultiDevice()) {
|
||||
jobManager.add(new MultiDeviceStickerPackOperationJob(pack.getPackId(), pack.getPackKey(), MultiDeviceStickerPackOperationJob.Type.INSTALL));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,11 +50,15 @@ public class StorageCapabilityMigrationJob extends MigrationJob {
|
||||
|
||||
@Override
|
||||
public void performMigration() {
|
||||
if (SignalStore.account().isLinkedDevice()) {
|
||||
return;
|
||||
}
|
||||
|
||||
JobManager jobManager = AppDependencies.getJobManager();
|
||||
|
||||
jobManager.startChain(new RefreshAttributesJob()).then(new RefreshOwnProfileJob()).enqueue();
|
||||
|
||||
if (SignalStore.account().hasLinkedDevices()) {
|
||||
if (SignalStore.account().isMultiDevice()) {
|
||||
Log.i(TAG, "Multi-device.");
|
||||
jobManager.startChain(new StorageForcePushJob())
|
||||
.then(new MultiDeviceKeysUpdateJob())
|
||||
|
||||
@@ -5,7 +5,7 @@ import org.signal.core.util.withinTransaction
|
||||
import org.thoughtcrime.securesms.database.SignalDatabase
|
||||
import org.thoughtcrime.securesms.dependencies.AppDependencies
|
||||
import org.thoughtcrime.securesms.jobmanager.Job
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceKeysUpdateJob
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceStorageSyncRequestJob
|
||||
import org.thoughtcrime.securesms.jobs.StorageSyncJob
|
||||
import org.thoughtcrime.securesms.keyvalue.SignalStore
|
||||
|
||||
@@ -43,10 +43,10 @@ internal class StorageFixLocalUnknownMigrationJob(
|
||||
|
||||
val jobManager = AppDependencies.jobManager
|
||||
|
||||
if (SignalStore.account.hasLinkedDevices) {
|
||||
if (SignalStore.account.isMultiDevice) {
|
||||
Log.i(TAG, "Multi-device.")
|
||||
jobManager.startChain(StorageSyncJob.forLocalChange())
|
||||
.then(MultiDeviceKeysUpdateJob())
|
||||
.then(MultiDeviceStorageSyncRequestJob())
|
||||
.enqueue()
|
||||
} else {
|
||||
Log.i(TAG, "Single-device.")
|
||||
|
||||
@@ -9,6 +9,7 @@ import org.thoughtcrime.securesms.dependencies.AppDependencies;
|
||||
import org.thoughtcrime.securesms.jobmanager.Job;
|
||||
import org.thoughtcrime.securesms.jobmanager.JobManager;
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceKeysUpdateJob;
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceStorageSyncRequestJob;
|
||||
import org.thoughtcrime.securesms.jobs.StorageSyncJob;
|
||||
import org.thoughtcrime.securesms.keyvalue.SignalStore;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
@@ -52,10 +53,10 @@ public class StorageServiceMigrationJob extends MigrationJob {
|
||||
|
||||
JobManager jobManager = AppDependencies.getJobManager();
|
||||
|
||||
if (SignalStore.account().hasLinkedDevices()) {
|
||||
if (SignalStore.account().isMultiDevice()) {
|
||||
Log.i(TAG, "Multi-device.");
|
||||
jobManager.startChain(StorageSyncJob.forLocalChange())
|
||||
.then(new MultiDeviceKeysUpdateJob())
|
||||
.then(new MultiDeviceStorageSyncRequestJob())
|
||||
.enqueue();
|
||||
} else {
|
||||
Log.i(TAG, "Single-device.");
|
||||
|
||||
@@ -21,7 +21,11 @@ internal class SyncKeysMigrationJob(
|
||||
override fun isUiBlocking(): Boolean = false
|
||||
|
||||
override fun performMigration() {
|
||||
if (SignalStore.account.hasLinkedDevices) {
|
||||
if (SignalStore.account.isLinkedDevice) {
|
||||
return
|
||||
}
|
||||
|
||||
if (SignalStore.account.isMultiDevice) {
|
||||
AppDependencies.jobManager.add(MultiDeviceKeysUpdateJob())
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user