From 279dcb1428e43bb03ea28ac849194cc57e9ceec8 Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Sat, 1 Feb 2020 13:13:53 -0400 Subject: [PATCH] Apply KBS Lock fixes and pluralization --- .../securesms/keyvalue/KbsValues.java | 8 +- .../securesms/lock/v2/BaseKbsPinFragment.java | 8 +- .../lock/v2/BaseKbsPinViewModel.java | 5 +- .../lock/v2/ConfirmKbsPinFragment.java | 2 +- .../lock/v2/ConfirmKbsPinRepository.java | 4 +- .../lock/v2/ConfirmKbsPinViewModel.java | 10 +- .../lock/v2/CreateKbsPinFragment.java | 6 +- .../lock/v2/CreateKbsPinViewModel.java | 13 +- ...KeyboardType.java => PinKeyboardType.java} | 10 +- .../fragments/RegistrationLockFragment.java | 84 ++++++--- .../securesms/util/TextSecurePreferences.java | 1 - .../res/layout/fragment_registration_lock.xml | 171 +++++++++--------- .../main/res/navigation/create_kbs_pin.xml | 2 +- app/src/main/res/values/strings.xml | 47 +++-- 14 files changed, 213 insertions(+), 158 deletions(-) rename app/src/main/java/org/thoughtcrime/securesms/lock/v2/{KbsKeyboardType.java => PinKeyboardType.java} (66%) diff --git a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KbsValues.java b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KbsValues.java index 71a6ba3ee0..0dd6f4a07b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KbsValues.java +++ b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KbsValues.java @@ -4,7 +4,7 @@ import androidx.annotation.CheckResult; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import org.thoughtcrime.securesms.lock.v2.KbsKeyboardType; +import org.thoughtcrime.securesms.lock.v2.PinKeyboardType; import org.thoughtcrime.securesms.util.JsonUtils; import org.whispersystems.signalservice.api.RegistrationLockData; import org.whispersystems.signalservice.api.kbs.MasterKey; @@ -117,14 +117,14 @@ public final class KbsValues { } } - public void setKeyboardType(@NonNull KbsKeyboardType keyboardType) { + public void setKeyboardType(@NonNull PinKeyboardType keyboardType) { store.beginWrite() .putString(KEYBOARD_TYPE, keyboardType.getCode()) .commit(); } @CheckResult - public @NonNull KbsKeyboardType getKeyboardType() { - return KbsKeyboardType.fromCode(store.getString(KEYBOARD_TYPE, null)); + public @NonNull PinKeyboardType getKeyboardType() { + return PinKeyboardType.fromCode(store.getString(KEYBOARD_TYPE, null)); } } 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 dca0c32aa2..f1a5f082ff 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 @@ -132,15 +132,15 @@ abstract class BaseKbsPinFragment extends return true; } - private void updateKeyboard(@NonNull KbsKeyboardType keyboard) { - boolean isAlphaNumeric = keyboard == KbsKeyboardType.ALPHA_NUMERIC; + private void updateKeyboard(@NonNull PinKeyboardType keyboard) { + boolean isAlphaNumeric = keyboard == PinKeyboardType.ALPHA_NUMERIC; input.setInputType(isAlphaNumeric ? InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD : InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_VARIATION_PASSWORD); } - private @StringRes int resolveKeyboardToggleText(@NonNull KbsKeyboardType keyboard) { - if (keyboard == KbsKeyboardType.ALPHA_NUMERIC) { + private @StringRes int resolveKeyboardToggleText(@NonNull PinKeyboardType keyboard) { + if (keyboard == PinKeyboardType.ALPHA_NUMERIC) { return R.string.BaseKbsPinFragment__create_numeric_pin; } else { return R.string.BaseKbsPinFragment__create_alphanumeric_pin; diff --git a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinViewModel.java b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinViewModel.java index e991d69b3c..4a234792ef 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinViewModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/BaseKbsPinViewModel.java @@ -1,15 +1,12 @@ package org.thoughtcrime.securesms.lock.v2; import androidx.annotation.MainThread; -import androidx.annotation.NonNull; import androidx.lifecycle.LiveData; -import androidx.lifecycle.MutableLiveData; -import androidx.lifecycle.ViewModel; interface BaseKbsPinViewModel { LiveData getUserEntry(); - LiveData getKeyboard(); + LiveData getKeyboard(); @MainThread void setUserEntry(String userEntry); diff --git a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinFragment.java b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinFragment.java index 18bb504f6c..ac661fed3f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinFragment.java @@ -41,7 +41,7 @@ public class ConfirmKbsPinFragment extends BaseKbsPinFragment resultConsumer) { + void setPin(@NonNull KbsPin kbsPin, @NonNull PinKeyboardType keyboard, @NonNull Consumer resultConsumer) { Context context = ApplicationDependencies.getApplication(); String pinValue = kbsPin.toString(); diff --git a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinViewModel.java b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinViewModel.java index 7ab230585f..8a77c85f1f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinViewModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/lock/v2/ConfirmKbsPinViewModel.java @@ -16,14 +16,14 @@ final class ConfirmKbsPinViewModel extends ViewModel implements BaseKbsPinViewMo private final ConfirmKbsPinRepository repository; private final MutableLiveData userEntry = new MutableLiveData<>(KbsPin.EMPTY); - private final MutableLiveData keyboard = new MutableLiveData<>(KbsKeyboardType.NUMERIC); + private final MutableLiveData keyboard = new MutableLiveData<>(PinKeyboardType.NUMERIC); private final MutableLiveData saveAnimation = new MutableLiveData<>(SaveAnimation.NONE); private final MutableLiveData