Migrate local account data into SignalStore.

This commit is contained in:
Greyson Parrelli
2021-11-17 15:08:28 -05:00
committed by Cody Henthorne
parent 87f175a96b
commit 8aea20f147
87 changed files with 1063 additions and 756 deletions

View File

@@ -21,6 +21,7 @@ import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.jobmanager.JobManager;
import org.thoughtcrime.securesms.jobs.DirectoryRefreshJob;
import org.thoughtcrime.securesms.jobs.RotateCertificateJob;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.pin.PinState;
import org.thoughtcrime.securesms.push.AccountManagerFactory;
import org.thoughtcrime.securesms.recipients.Recipient;
@@ -63,10 +64,10 @@ public final class RegistrationRepository {
}
public int getRegistrationId() {
int registrationId = TextSecurePreferences.getLocalRegistrationId(context);
int registrationId = SignalStore.account().getRegistrationId();
if (registrationId == 0) {
registrationId = KeyHelper.generateRegistrationId(false);
TextSecurePreferences.setLocalRegistrationId(context, registrationId);
SignalStore.account().setRegistrationId(registrationId);
}
return registrationId;
}
@@ -148,14 +149,13 @@ public final class RegistrationRepository {
recipientDatabase.setProfileSharing(selfId, true);
recipientDatabase.markRegisteredOrThrow(selfId, aci);
TextSecurePreferences.setLocalNumber(context, registrationData.getE164());
TextSecurePreferences.setLocalAci(context, aci);
SignalStore.account().setE164(registrationData.getE164());
SignalStore.account().setAci(aci);
recipientDatabase.setProfileKey(selfId, registrationData.getProfileKey());
ApplicationDependencies.getRecipientCache().clearSelf();
TextSecurePreferences.setFcmToken(context, registrationData.getFcmToken());
TextSecurePreferences.setFcmDisabled(context, registrationData.isNotFcm());
TextSecurePreferences.setWebsocketRegistered(context, true);
SignalStore.account().setFcmToken(registrationData.getFcmToken());
SignalStore.account().setFcmEnabled(registrationData.isFcm());
ApplicationDependencies.getIdentityStore()
.saveIdentityWithoutSideEffects(selfId,
@@ -165,8 +165,8 @@ public final class RegistrationRepository {
System.currentTimeMillis(),
true);
TextSecurePreferences.setPushServerPassword(context, registrationData.getPassword());
TextSecurePreferences.setPushRegistered(context, true);
SignalStore.account().setServicePassword(registrationData.getPassword());
SignalStore.account().setRegistered(true);
TextSecurePreferences.setSignedPreKeyRegistered(context, true);
TextSecurePreferences.setPromptedPushRegistration(context, true);
TextSecurePreferences.setUnauthorizedReceived(context, false);

View File

@@ -25,7 +25,7 @@ public final class RegistrationUtil {
*/
public static void maybeMarkRegistrationComplete(@NonNull Context context) {
if (!SignalStore.registrationValues().isRegistrationComplete() &&
TextSecurePreferences.isPushRegistered(context) &&
SignalStore.account().isRegistered() &&
!Recipient.self().getProfileName().isEmpty() &&
(SignalStore.kbsValues().hasPin() || SignalStore.kbsValues().hasOptedOut()))
{

View File

@@ -44,6 +44,7 @@ import org.thoughtcrime.securesms.LoggingFragment;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.components.LabeledEditText;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.registration.VerifyAccountRepository.Mode;
import org.thoughtcrime.securesms.registration.util.RegistrationNumberInputController;
import org.thoughtcrime.securesms.registration.viewmodel.NumberViewState;
@@ -221,7 +222,7 @@ public final class EnterPhoneNumberFragment extends LoggingFragment implements R
NavController navController = NavHostFragment.findNavController(this);
Disposable request = viewModel.requestVerificationCode(mode)
.doOnSubscribe(unused -> TextSecurePreferences.setPushRegistered(ApplicationDependencies.getApplication(), false))
.doOnSubscribe(unused -> SignalStore.account().setRegistered(false))
.observeOn(AndroidSchedulers.mainThread())
.subscribe(processor -> {
if (processor.hasResult()) {