From e4fc6f41b8ffbf0564f02460690afaa1e77a58af Mon Sep 17 00:00:00 2001 From: Alan Evans Date: Mon, 11 Nov 2019 13:00:01 -0500 Subject: [PATCH] Schedule first backup after restore for 24hrs time. --- .../fragments/RestoreBackupFragment.java | 6 +++++- .../securesms/service/LocalBackupListener.java | 15 ++++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/org/thoughtcrime/securesms/registration/fragments/RestoreBackupFragment.java b/src/org/thoughtcrime/securesms/registration/fragments/RestoreBackupFragment.java index cf7d6004a7..347224960c 100644 --- a/src/org/thoughtcrime/securesms/registration/fragments/RestoreBackupFragment.java +++ b/src/org/thoughtcrime/securesms/registration/fragments/RestoreBackupFragment.java @@ -33,6 +33,7 @@ import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; import org.thoughtcrime.securesms.R; +import org.thoughtcrime.securesms.backup.BackupPassphrase; import org.thoughtcrime.securesms.backup.FullBackupBase; import org.thoughtcrime.securesms.backup.FullBackupImporter; import org.thoughtcrime.securesms.crypto.AttachmentSecretProvider; @@ -41,6 +42,7 @@ import org.thoughtcrime.securesms.database.NoExternalStorageException; import org.thoughtcrime.securesms.logging.Log; import org.thoughtcrime.securesms.notifications.NotificationChannels; import org.thoughtcrime.securesms.permissions.Permissions; +import org.thoughtcrime.securesms.service.LocalBackupListener; import org.thoughtcrime.securesms.util.BackupUtil; import org.thoughtcrime.securesms.util.DateUtils; import org.thoughtcrime.securesms.util.TextSecurePreferences; @@ -204,8 +206,10 @@ public final class RestoreBackupFragment extends BaseRegistrationFragment { DatabaseFactory.upgradeRestored(context, database); NotificationChannels.restoreContactNotificationChannels(context); + LocalBackupListener.setNextBackupTimeToIntervalFromNow(context); + BackupPassphrase.set(context, passphrase); TextSecurePreferences.setBackupEnabled(context, true); - TextSecurePreferences.setBackupPassphrase(context, passphrase); + LocalBackupListener.schedule(context); Log.i(TAG, "Backup restore complete."); return BackupImportResult.SUCCESS; diff --git a/src/org/thoughtcrime/securesms/service/LocalBackupListener.java b/src/org/thoughtcrime/securesms/service/LocalBackupListener.java index d88c976075..6a0f30edd8 100644 --- a/src/org/thoughtcrime/securesms/service/LocalBackupListener.java +++ b/src/org/thoughtcrime/securesms/service/LocalBackupListener.java @@ -4,7 +4,8 @@ package org.thoughtcrime.securesms.service; import android.content.Context; import android.content.Intent; -import org.thoughtcrime.securesms.ApplicationContext; +import androidx.annotation.NonNull; + import org.thoughtcrime.securesms.dependencies.ApplicationDependencies; import org.thoughtcrime.securesms.jobs.LocalBackupJob; import org.thoughtcrime.securesms.util.TextSecurePreferences; @@ -26,10 +27,7 @@ public class LocalBackupListener extends PersistentAlarmManagerListener { ApplicationDependencies.getJobManager().add(new LocalBackupJob()); } - long nextTime = System.currentTimeMillis() + INTERVAL; - TextSecurePreferences.setNextBackupTime(context, nextTime); - - return nextTime; + return setNextBackupTimeToIntervalFromNow(context); } public static void schedule(Context context) { @@ -37,4 +35,11 @@ public class LocalBackupListener extends PersistentAlarmManagerListener { new LocalBackupListener().onReceive(context, new Intent()); } } + + public static long setNextBackupTimeToIntervalFromNow(@NonNull Context context) { + long nextTime = System.currentTimeMillis() + INTERVAL; + TextSecurePreferences.setNextBackupTime(context, nextTime); + + return nextTime; + } }