diff --git a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinFragment.java b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinFragment.java index 28aaf210e4..7ca72de028 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinFragment.java @@ -215,11 +215,6 @@ abstract class BaseKbsPinFragment extends } private void onPinSkipped() { - PinOptOutDialog.showForSkip(requireContext(), - this::closeNavGraphBranch, - () -> { - PinState.onPinCreateFailure(); - closeNavGraphBranch(); - }); + PinOptOutDialog.show(requireContext(), this::closeNavGraphBranch); } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/KbsSplashFragment.java b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/KbsSplashFragment.java index 42e6e49b14..dd572ea57d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/KbsSplashFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/KbsSplashFragment.java @@ -126,11 +126,6 @@ public final class KbsSplashFragment extends Fragment { } private void onPinSkipped() { - PinOptOutDialog.showForSkip(requireContext(), - () -> requireActivity().finish(), - () -> { - PinState.onPinCreateFailure(); - requireActivity().finish(); - }); + PinOptOutDialog.show(requireContext(), () -> requireActivity().finish()); } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/pin/PinOptOutDialog.java b/app/src/main/java/org/thoughtcrime/securesms/pin/PinOptOutDialog.java index 16a372e77c..9c765ffabd 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/pin/PinOptOutDialog.java +++ b/app/src/main/java/org/thoughtcrime/securesms/pin/PinOptOutDialog.java @@ -19,50 +19,30 @@ public final class PinOptOutDialog { private static final String TAG = Log.tag(PinOptOutDialog.class); - public static void showForSkip(@NonNull Context context, @NonNull Runnable onSuccess, @NonNull Runnable onFailed) { - show(context, - true, - onSuccess, - onFailed); - } - - public static void showForOptOut(@NonNull Context context, @NonNull Runnable onSuccess, @NonNull Runnable onFailed) { - show(context, - false, - onSuccess, - onFailed); - } - - private static void show(@NonNull Context context, - boolean isForSkip, - @NonNull Runnable onSuccess, - @NonNull Runnable onFailed) - { + public static void show(@NonNull Context context, @NonNull Runnable onSuccess) { + Log.i(TAG, "show()"); AlertDialog dialog = new AlertDialog.Builder(context) .setTitle(R.string.PinOptOutDialog_warning) .setMessage(R.string.PinOptOutDialog_if_you_disable_the_pin_you_will_lose_all_data) .setCancelable(true) .setPositiveButton(R.string.PinOptOutDialog_disable_pin, (d, which) -> { + Log.i(TAG, "Disable clicked."); d.dismiss(); AlertDialog progress = SimpleProgressDialog.show(context); SimpleTask.run(() -> { - if (isForSkip) { - PinState.onPinCreationSkipped(); - } else { - PinState.onPinOptOut(); - } - return true; + PinState.onPinOptOut(); + return null; }, success -> { - if (success) { - onSuccess.run(); - } else { - onFailed.run(); - } + Log.i(TAG, "Disable operation finished."); + onSuccess.run(); progress.dismiss(); }); }) - .setNegativeButton(android.R.string.cancel, (d, which) -> d.dismiss()) + .setNegativeButton(android.R.string.cancel, (d, which) -> { + Log.i(TAG, "Cancel clicked."); + d.dismiss(); + }) .create(); dialog.setOnShowListener(dialogInterface -> { diff --git a/app/src/main/java/org/thoughtcrime/securesms/pin/PinState.java b/app/src/main/java/org/thoughtcrime/securesms/pin/PinState.java index f3ed661075..20faacb49d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/pin/PinState.java +++ b/app/src/main/java/org/thoughtcrime/securesms/pin/PinState.java @@ -202,19 +202,6 @@ public final class PinState { updateState(buildInferredStateFromOtherFields()); } - /** - * Invoked when the user has chosen to skip PIN creation. - */ - @WorkerThread - public static synchronized void onPinCreationSkipped() { - Log.i(TAG, "onPinCreationSkipped()"); - assertState(State.NO_REGISTRATION_LOCK); - - optOutOfPin(); - - updateState(buildInferredStateFromOtherFields()); - } - /** * Invoked whenever a Signal PIN user enables registration lock. */ diff --git a/app/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPinPreferenceFragment.java b/app/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPinPreferenceFragment.java index 3ca195cd99..c23fc1a6e4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPinPreferenceFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPinPreferenceFragment.java @@ -82,12 +82,11 @@ public class AdvancedPinPreferenceFragment extends ListSummaryPreferenceFragment .setPositiveButton(android.R.string.ok, (d, which) -> d.dismiss()) .show(); } else if (!enabled) { - PinOptOutDialog.showForOptOut(requireContext(), - () -> { - updatePreferenceState(); - Snackbar.make(requireView(), R.string.ApplicationPreferencesActivity_pin_disabled, Snackbar.LENGTH_SHORT).setTextColor(Color.WHITE).show(); - }, - () -> Toast.makeText(requireContext(), R.string.ApplicationPreferencesActivity_failed_to_disable_pins_try_again_later, Toast.LENGTH_LONG).show()); + PinOptOutDialog.show(requireContext(), + () -> { + updatePreferenceState(); + Snackbar.make(requireView(), R.string.ApplicationPreferencesActivity_pin_disabled, Snackbar.LENGTH_SHORT).setTextColor(Color.WHITE).show(); + }); } else { startActivityForResult(CreateKbsPinActivity.getIntentForPinCreate(requireContext()), CreateKbsPinActivity.REQUEST_NEW_PIN); } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0727baf31f..30a51efff0 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -54,7 +54,6 @@ Screen lock %1$s Theme %1$s, Language %2$s PINs are required for registration lock. To disable PINs, please first disable registration lock. - Failed to disable PINs. Try again later. PIN created. PIN disabled.