* simplify code for readability * code-cleanup. Make non-changing variables final * Bump buildToolsVersion 29.0.1 -> 29.0.2 for FDroid build compability * Set gradle version to static 3.6.4 instead of dynamic 3.+ * Use StandardCharsets.UTF_8 instead of string UTF8 * Remove unused imports * Add missing null check Co-authored-by: Patric Karlström <patric@pkcab.eu>
71 lines
2.6 KiB
Java
71 lines
2.6 KiB
Java
package io.lbry.browser.adapter;
|
|
|
|
import androidx.fragment.app.Fragment;
|
|
import androidx.fragment.app.FragmentActivity;
|
|
import androidx.viewpager2.adapter.FragmentStateAdapter;
|
|
|
|
import io.lbry.browser.listener.SignInListener;
|
|
import io.lbry.browser.listener.WalletSyncListener;
|
|
import io.lbry.browser.ui.verification.EmailVerificationFragment;
|
|
import io.lbry.browser.ui.verification.ManualVerificationFragment;
|
|
import io.lbry.browser.ui.verification.PhoneVerificationFragment;
|
|
import io.lbry.browser.ui.verification.WalletVerificationFragment;
|
|
import lombok.SneakyThrows;
|
|
|
|
/**
|
|
* 4 fragments
|
|
* - Email collect / verify (sign in)
|
|
* - Phone number collect / verify (rewards)
|
|
* - Wallet password
|
|
* - Manual verification page
|
|
*/
|
|
public class VerificationPagerAdapter extends FragmentStateAdapter {
|
|
public static final int PAGE_VERIFICATION_EMAIL = 0;
|
|
public static final int PAGE_VERIFICATION_PHONE = 1;
|
|
public static final int PAGE_VERIFICATION_WALLET = 2;
|
|
public static final int PAGE_VERIFICATION_MANUAL = 3;
|
|
|
|
private final FragmentActivity activity;
|
|
|
|
public VerificationPagerAdapter(FragmentActivity activity) {
|
|
super(activity);
|
|
this.activity = activity;
|
|
}
|
|
|
|
@SneakyThrows
|
|
@Override
|
|
public Fragment createFragment(int position) {
|
|
switch (position) {
|
|
case 0:
|
|
default:
|
|
EmailVerificationFragment evFragment = EmailVerificationFragment.class.newInstance();
|
|
if (activity instanceof SignInListener) {
|
|
evFragment.setListener((SignInListener) activity);
|
|
}
|
|
return evFragment;
|
|
case 1:
|
|
PhoneVerificationFragment pvFragment = PhoneVerificationFragment.class.newInstance();
|
|
if (activity instanceof SignInListener) {
|
|
pvFragment.setListener((SignInListener) activity);
|
|
}
|
|
return pvFragment;
|
|
case 2:
|
|
WalletVerificationFragment wvFragment = WalletVerificationFragment.class.newInstance();
|
|
if (activity instanceof WalletSyncListener) {
|
|
wvFragment.setListener((WalletSyncListener) activity);
|
|
}
|
|
return wvFragment;
|
|
case 3:
|
|
ManualVerificationFragment mvFragment = ManualVerificationFragment.class.newInstance();
|
|
if (activity instanceof SignInListener) {
|
|
mvFragment.setListener((SignInListener) activity);
|
|
}
|
|
return mvFragment;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public int getItemCount() {
|
|
return 4;
|
|
}
|
|
}
|