mirror of
https://github.com/oxen-io/session-android.git
synced 2025-12-30 15:46:30 +00:00
Fix crash in getIntentForPinCreate(), show 'Create' in prefs.
This commit is contained in:
@@ -26,14 +26,16 @@ public class CreateKbsPinActivity extends BaseActionBarActivity {
|
||||
private final DynamicTheme dynamicTheme = new DynamicRegistrationTheme();
|
||||
|
||||
public static Intent getIntentForPinCreate(@NonNull Context context) {
|
||||
return new Intent(context, CreateKbsPinActivity.class);
|
||||
return getIntent(context, true);
|
||||
}
|
||||
|
||||
public static Intent getIntentForPinUpdate(@NonNull Context context) {
|
||||
Intent intent = getIntentForPinCreate(context);
|
||||
|
||||
intent.putExtra(IS_NEW_PIN, true);
|
||||
return getIntent(context, false);
|
||||
}
|
||||
|
||||
private static Intent getIntent(@NonNull Context context, boolean isNewPin) {
|
||||
Intent intent = new Intent(context, CreateKbsPinActivity.class);
|
||||
intent.putExtra(IS_NEW_PIN, isNewPin);
|
||||
return intent;
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.app.KeyguardManager;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.widget.Button;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
@@ -23,7 +24,6 @@ import org.thoughtcrime.securesms.crypto.MasterSecretUtil;
|
||||
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceConfigurationUpdateJob;
|
||||
import org.thoughtcrime.securesms.jobs.RefreshAttributesJob;
|
||||
import org.thoughtcrime.securesms.keyvalue.SignalStore;
|
||||
import org.thoughtcrime.securesms.lock.RegistrationLockDialog;
|
||||
import org.thoughtcrime.securesms.lock.v2.CreateKbsPinActivity;
|
||||
import org.thoughtcrime.securesms.lock.v2.PinUtil;
|
||||
@@ -56,8 +56,16 @@ public class AppProtectionPreferenceFragment extends CorrectedPreferenceFragment
|
||||
Preference kbsGroup = this.findPreference("prefs_lock_v2");
|
||||
|
||||
if (FeatureFlags.pinsForAll()) {
|
||||
Preference preference = this.findPreference("pref_kbs_change");
|
||||
regGroup.setVisible(false);
|
||||
kbsPinChange.setOnPreferenceClickListener(new KbsPinChangeListener());
|
||||
|
||||
if (PinUtil.userHasPin(ApplicationDependencies.getApplication())) {
|
||||
kbsPinChange.setOnPreferenceClickListener(new KbsPinUpdateListener());
|
||||
preference.setWidgetLayoutResource(R.layout.kbs_pin_change_preference);
|
||||
} else {
|
||||
kbsPinChange.setOnPreferenceClickListener(new KbsPinCreateListener());
|
||||
preference.setWidgetLayoutResource(R.layout.kbs_pin_create_preference);
|
||||
}
|
||||
} else {
|
||||
kbsGroup.setVisible(false);
|
||||
regLock.setChecked(PinUtil.userHasPin(requireContext()));
|
||||
@@ -171,7 +179,7 @@ public class AppProtectionPreferenceFragment extends CorrectedPreferenceFragment
|
||||
}
|
||||
}
|
||||
|
||||
private class KbsPinChangeListener implements Preference.OnPreferenceClickListener {
|
||||
private class KbsPinUpdateListener implements Preference.OnPreferenceClickListener {
|
||||
@Override
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
startActivityForResult(CreateKbsPinActivity.getIntentForPinUpdate(requireContext()), CreateKbsPinActivity.REQUEST_NEW_PIN);
|
||||
@@ -179,6 +187,14 @@ public class AppProtectionPreferenceFragment extends CorrectedPreferenceFragment
|
||||
}
|
||||
}
|
||||
|
||||
private class KbsPinCreateListener implements Preference.OnPreferenceClickListener {
|
||||
@Override
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
startActivityForResult(CreateKbsPinActivity.getIntentForPinCreate(requireContext()), CreateKbsPinActivity.REQUEST_NEW_PIN);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
private class AccountLockClickListener implements Preference.OnPreferenceClickListener {
|
||||
@Override
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
|
||||
Reference in New Issue
Block a user