Search in sources :

Example 6 with ProfileUploadJob

use of org.thoughtcrime.securesms.jobs.ProfileUploadJob in project Signal-Android by signalapp.

the class PinRestoreEntryFragment method handleSuccess.

private void handleSuccess() {
    cancelSpinning(pinButton);
    SignalStore.onboarding().clearAll();
    Activity activity = requireActivity();
    if (Recipient.self().getProfileName().isEmpty() || !AvatarHelper.hasAvatar(activity, Recipient.self().getId())) {
        final Intent main = MainActivity.clearTop(activity);
        final Intent profile = EditProfileActivity.getIntentForUserProfile(activity);
        profile.putExtra("next_intent", main);
        startActivity(profile);
    } else {
        RegistrationUtil.maybeMarkRegistrationComplete(requireContext());
        ApplicationDependencies.getJobManager().add(new ProfileUploadJob());
        startActivity(MainActivity.clearTop(activity));
    }
    activity.finish();
}
Also used : EditProfileActivity(org.thoughtcrime.securesms.profiles.edit.EditProfileActivity) MainActivity(org.thoughtcrime.securesms.MainActivity) Activity(android.app.Activity) Intent(android.content.Intent) ProfileUploadJob(org.thoughtcrime.securesms.jobs.ProfileUploadJob)

Example 7 with ProfileUploadJob

use of org.thoughtcrime.securesms.jobs.ProfileUploadJob in project Signal-Android by signalapp.

the class PaymentsHomeRepository method deactivatePayments.

public void deactivatePayments(@NonNull Consumer<Boolean> consumer) {
    SignalExecutors.BOUNDED.execute(() -> {
        SignalStore.paymentsValues().setMobileCoinPaymentsEnabled(false);
        ApplicationDependencies.getJobManager().add(new ProfileUploadJob());
        consumer.accept(!SignalStore.paymentsValues().mobileCoinPaymentsEnabled());
    });
}
Also used : ProfileUploadJob(org.thoughtcrime.securesms.jobs.ProfileUploadJob)

Example 8 with ProfileUploadJob

use of org.thoughtcrime.securesms.jobs.ProfileUploadJob in project Signal-Android by signalapp.

the class RegistrationCompleteFragment method onViewCreated.

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    FragmentActivity activity = requireActivity();
    RegistrationViewModel viewModel = new ViewModelProvider(activity).get(RegistrationViewModel.class);
    if (SignalStore.storageService().needsAccountRestore()) {
        Log.i(TAG, "Performing pin restore");
        activity.startActivity(new Intent(activity, PinRestoreActivity.class));
    } else if (!viewModel.isReregister()) {
        boolean needsProfile = Recipient.self().getProfileName().isEmpty() || !AvatarHelper.hasAvatar(activity, Recipient.self().getId());
        boolean needsPin = !SignalStore.kbsValues().hasPin();
        Log.i(TAG, "Pin restore flow not required." + " profile name: " + Recipient.self().getProfileName().isEmpty() + " profile avatar: " + !AvatarHelper.hasAvatar(activity, Recipient.self().getId()) + " needsPin:" + needsPin);
        Intent startIntent = MainActivity.clearTop(activity);
        if (needsPin) {
            startIntent = chainIntents(CreateKbsPinActivity.getIntentForPinCreate(requireContext()), startIntent);
        }
        if (needsProfile) {
            startIntent = chainIntents(EditProfileActivity.getIntentForUserProfile(activity), startIntent);
        }
        if (!needsProfile && !needsPin) {
            ApplicationDependencies.getJobManager().startChain(new ProfileUploadJob()).then(Arrays.asList(new MultiDeviceProfileKeyUpdateJob(), new MultiDeviceProfileContentUpdateJob())).enqueue();
            RegistrationUtil.maybeMarkRegistrationComplete(requireContext());
        }
        activity.startActivity(startIntent);
    }
    activity.finish();
    ActivityNavigator.applyPopAnimationsToPendingTransition(activity);
}
Also used : FragmentActivity(androidx.fragment.app.FragmentActivity) Intent(android.content.Intent) MultiDeviceProfileKeyUpdateJob(org.thoughtcrime.securesms.jobs.MultiDeviceProfileKeyUpdateJob) ProfileUploadJob(org.thoughtcrime.securesms.jobs.ProfileUploadJob) MultiDeviceProfileContentUpdateJob(org.thoughtcrime.securesms.jobs.MultiDeviceProfileContentUpdateJob) RegistrationViewModel(org.thoughtcrime.securesms.registration.viewmodel.RegistrationViewModel) ViewModelProvider(androidx.lifecycle.ViewModelProvider) PinRestoreActivity(org.thoughtcrime.securesms.pin.PinRestoreActivity)

Example 9 with ProfileUploadJob

use of org.thoughtcrime.securesms.jobs.ProfileUploadJob in project Signal-Android by WhisperSystems.

the class PaymentsHomeRepository method deactivatePayments.

public void deactivatePayments(@NonNull Consumer<Boolean> consumer) {
    SignalExecutors.BOUNDED.execute(() -> {
        SignalStore.paymentsValues().setMobileCoinPaymentsEnabled(false);
        ApplicationDependencies.getJobManager().add(new ProfileUploadJob());
        consumer.accept(!SignalStore.paymentsValues().mobileCoinPaymentsEnabled());
    });
}
Also used : ProfileUploadJob(org.thoughtcrime.securesms.jobs.ProfileUploadJob)

Example 10 with ProfileUploadJob

use of org.thoughtcrime.securesms.jobs.ProfileUploadJob in project Signal-Android by WhisperSystems.

the class ApplicationContext method ensureProfileUploaded.

private void ensureProfileUploaded() {
    if (SignalStore.account().isRegistered() && !SignalStore.registrationValues().hasUploadedProfile() && !Recipient.self().getProfileName().isEmpty()) {
        Log.w(TAG, "User has a profile, but has not uploaded one. Uploading now.");
        ApplicationDependencies.getJobManager().add(new ProfileUploadJob());
    }
}
Also used : ProfileUploadJob(org.thoughtcrime.securesms.jobs.ProfileUploadJob)

Aggregations

ProfileUploadJob (org.thoughtcrime.securesms.jobs.ProfileUploadJob)12 Intent (android.content.Intent)4 MultiDeviceProfileContentUpdateJob (org.thoughtcrime.securesms.jobs.MultiDeviceProfileContentUpdateJob)4 MultiDeviceProfileKeyUpdateJob (org.thoughtcrime.securesms.jobs.MultiDeviceProfileKeyUpdateJob)4 Activity (android.app.Activity)2 FragmentActivity (androidx.fragment.app.FragmentActivity)2 ViewModelProvider (androidx.lifecycle.ViewModelProvider)2 ByteArrayInputStream (java.io.ByteArrayInputStream)2 IOException (java.io.IOException)2 MainActivity (org.thoughtcrime.securesms.MainActivity)2 PinRestoreActivity (org.thoughtcrime.securesms.pin.PinRestoreActivity)2 EditProfileActivity (org.thoughtcrime.securesms.profiles.edit.EditProfileActivity)2 RegistrationViewModel (org.thoughtcrime.securesms.registration.viewmodel.RegistrationViewModel)2