Merge pull request #11207 from brave/nw_ui_fix_2

[Android] clickable backup wallet banner
This commit is contained in:
wchen342
2021-11-22 09:47:25 -05:00
committed by GitHub
2 changed files with 42 additions and 16 deletions
@@ -73,6 +73,7 @@ public class BraveWalletActivity
private Toolbar mToolbar;
private View cryptoLayout;
private View cryptoOnboardingLayout;
private ImageView swapButton;
private ViewPager cryptoWalletOnboardingViewPager;
private ModalDialogManager mModalDialogManager;
@@ -335,21 +336,7 @@ public class BraveWalletActivity
securePasswordFragment.setOnNextPageListener(this);
navigationItems.add(new NavigationItem(
getResources().getString(R.string.secure_your_crypto), securePasswordFragment));
BackupWalletFragment backupWalletFragment = new BackupWalletFragment();
backupWalletFragment.setOnNextPageListener(this);
navigationItems.add(new NavigationItem(
getResources().getString(R.string.backup_your_wallet), backupWalletFragment));
RecoveryPhraseFragment recoveryPhraseFragment = new RecoveryPhraseFragment();
recoveryPhraseFragment.setOnNextPageListener(this);
navigationItems.add(
new NavigationItem(getResources().getString(R.string.your_recovery_phrase),
recoveryPhraseFragment));
VerifyRecoveryPhraseFragment verifyRecoveryPhraseFragment =
new VerifyRecoveryPhraseFragment();
verifyRecoveryPhraseFragment.setOnNextPageListener(this);
navigationItems.add(
new NavigationItem(getResources().getString(R.string.verify_recovery_phrase),
verifyRecoveryPhraseFragment));
addBackupWalletSequence(navigationItems);
} else if (type == UNLOCK_WALLET_ACTION) {
UnlockWalletFragment unlockWalletFragment = new UnlockWalletFragment();
unlockWalletFragment.setOnNextPageListener(this);
@@ -370,7 +357,7 @@ public class BraveWalletActivity
}
private void setCryptoLayout() {
View cryptoOnboardingLayout = findViewById(R.id.crypto_onboarding_layout);
cryptoOnboardingLayout = findViewById(R.id.crypto_onboarding_layout);
cryptoOnboardingLayout.setVisibility(View.GONE);
cryptoLayout.setVisibility(View.VISIBLE);
@@ -388,13 +375,51 @@ public class BraveWalletActivity
mKeyringController.isWalletBackedUp(backed_up -> {
if (!backed_up) {
showWalletBackupBanner();
} else {
findViewById(R.id.wallet_backup_banner).setVisibility(View.GONE);
}
});
}
private void addBackupWalletSequence(List<NavigationItem> navigationItems) {
BackupWalletFragment backupWalletFragment = new BackupWalletFragment();
backupWalletFragment.setOnNextPageListener(this);
navigationItems.add(new NavigationItem(
getResources().getString(R.string.backup_your_wallet), backupWalletFragment));
RecoveryPhraseFragment recoveryPhraseFragment = new RecoveryPhraseFragment();
recoveryPhraseFragment.setOnNextPageListener(this);
navigationItems.add(new NavigationItem(
getResources().getString(R.string.your_recovery_phrase), recoveryPhraseFragment));
VerifyRecoveryPhraseFragment verifyRecoveryPhraseFragment =
new VerifyRecoveryPhraseFragment();
verifyRecoveryPhraseFragment.setOnNextPageListener(this);
navigationItems.add(
new NavigationItem(getResources().getString(R.string.verify_recovery_phrase),
verifyRecoveryPhraseFragment));
}
private void backupBannerOnClick() {
cryptoOnboardingLayout.setVisibility(View.VISIBLE);
cryptoLayout.setVisibility(View.GONE);
List<NavigationItem> navigationItems = new ArrayList<>();
addBackupWalletSequence(navigationItems);
if (cryptoWalletOnboardingPagerAdapter != null) {
cryptoWalletOnboardingPagerAdapter.setNavigationItems(navigationItems);
cryptoWalletOnboardingPagerAdapter.notifyDataSetChanged();
}
}
private void showWalletBackupBanner() {
final ViewGroup backupTopBannerLayout = (ViewGroup) findViewById(R.id.wallet_backup_banner);
backupTopBannerLayout.setVisibility(View.VISIBLE);
backupTopBannerLayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
backupBannerOnClick();
}
});
ImageView bannerClose = backupTopBannerLayout.findViewById(R.id.backup_banner_close);
bannerClose.setOnClickListener(new View.OnClickListener() {
@Override
@@ -76,6 +76,7 @@ public class VerifyRecoveryPhraseFragment extends CryptoOnboardingFragment {
String recoveryPhraseToVerify = Utils.getRecoveryPhraseFromList(
recoveryPhrasesToVerifyAdapter.getRecoveryPhraseList());
if (result.equals(recoveryPhraseToVerify)) {
keyringController.notifyWalletBackupComplete();
onNextPage.gotoNextPage(true);
} else {
phraseNotMatch();