Revert "Fingerprint: Use AOSP fingerprint setup"

This reverts commit 070fbeaf5d.

We still need to show the fingerprint setup screen which allows
the user to skip setting up a fingerprint if they choose to do so.

Change-Id: Ifa49ad1ac0e5cf113290b973ac5e9cd8abdbed9a
This commit is contained in:
d34d
2015-12-03 16:48:54 -08:00
parent 070fbeaf5d
commit a2f4c5812e
4 changed files with 155 additions and 44 deletions

View File

@@ -40,7 +40,7 @@ public class SetupWizardApp extends Application {
public static final String ACTION_SETUP_WIFI = "com.android.net.wifi.SETUP_WIFI_NETWORK";
public static final String ACTION_VIEW_LEGAL = "cyanogenmod.intent.action.LEGALESE";
public static final String ACTION_SETUP_FINGERPRINT = "android.settings.FINGERPRINT_SETUP";
public static final String ACTION_SETUP_FINGERPRINT = "com.android.settings.SETUP_FINGERPRINT";
public static final String EXTRA_FIRST_RUN = "firstRun";
public static final String EXTRA_ALLOW_SKIP = "allowSkip";

View File

@@ -23,32 +23,33 @@ import android.app.FragmentManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import com.android.internal.widget.LockPatternUtils;
import com.cyanogenmod.setupwizard.R;
import com.cyanogenmod.setupwizard.SetupWizardApp;
import com.cyanogenmod.setupwizard.cmstats.SetupStats;
import com.cyanogenmod.setupwizard.ui.LoadingFragment;
import com.cyanogenmod.setupwizard.ui.SetupPageFragment;
public class FingerprintSetupPage extends SetupPage {
private static final String TAG = "FingerprintSetupPage";
private LoadingFragment mLoadingFragment;
public FingerprintSetupPage(Context context, SetupDataCallbacks callbacks) {
super(context, callbacks);
}
@Override
public Fragment getFragment(FragmentManager fragmentManager, int action) {
mLoadingFragment = (LoadingFragment)fragmentManager.findFragmentByTag(getKey());
if (mLoadingFragment == null) {
Fragment fragment = fragmentManager.findFragmentByTag(getKey());
if (fragment == null) {
Bundle args = new Bundle();
args.putString(Page.KEY_PAGE_ARGUMENT, getKey());
args.putInt(Page.KEY_PAGE_ACTION, action);
mLoadingFragment = new LoadingFragment();
mLoadingFragment.setArguments(args);
fragment = new FingerprintSetupFragment();
fragment.setArguments(args);
}
return mLoadingFragment;
return fragment;
}
@Override
@@ -63,49 +64,60 @@ public class FingerprintSetupPage extends SetupPage {
@Override
public int getTitleResId() {
return R.string.loading;
return R.string.fingerprint_setup_title;
}
@Override
public void doLoadAction(FragmentManager fragmentManager, int action) {
super.doLoadAction(fragmentManager, action);
launchFingerprintSetup();
}
private void launchFingerprintSetup() {
Intent intent = new Intent(SetupWizardApp.ACTION_SETUP_FINGERPRINT);
intent.putExtra(SetupWizardApp.EXTRA_USE_IMMERSIVE, true);
intent.putExtra(SetupWizardApp.EXTRA_THEME, SetupWizardApp.EXTRA_MATERIAL_LIGHT);
ActivityOptions options =
ActivityOptions.makeCustomAnimation(mContext,
android.R.anim.fade_in,
android.R.anim.fade_out);
SetupStats.addEvent(SetupStats.Categories.EXTERNAL_PAGE_LOAD,
SetupStats.Action.EXTERNAL_PAGE_LAUNCH,
SetupStats.Label.PAGE, SetupStats.Label.FINGERPRINT_SETUP);
mLoadingFragment.startActivityForResult(intent,
SetupWizardApp.REQUEST_CODE_SETUP_FINGERPRINT, options.toBundle());
}
@Override
public boolean onActivityResult(int requestCode, int resultCode, Intent data) {
if (SetupWizardApp.REQUEST_CODE_SETUP_FINGERPRINT == requestCode) {
if (resultCode == Activity.RESULT_CANCELED) {
SetupStats.addEvent(SetupStats.Categories.EXTERNAL_PAGE_LOAD,
SetupStats.Action.EXTERNAL_PAGE_RESULT,
SetupStats.Label.FINGERPRINT_SETUP, "canceled");
getCallbacks().onPreviousPage();
} else if (resultCode == Activity.RESULT_OK) {
SetupStats.addEvent(SetupStats.Categories.EXTERNAL_PAGE_LOAD,
SetupStats.Action.EXTERNAL_PAGE_RESULT,
SetupStats.Label.FINGERPRINT_SETUP, "success");
getCallbacks().onNextPage();
} else {
SetupStats.addEvent(SetupStats.Categories.EXTERNAL_PAGE_LOAD,
SetupStats.Action.EXTERNAL_PAGE_RESULT,
SetupStats.Label.FINGERPRINT_SETUP, "skipped");
if (resultCode == Activity.RESULT_OK) {
getCallbacks().onNextPage();
}
}
return true;
}
public static class FingerprintSetupFragment extends SetupPageFragment {
private TextView mSetupFingerprint;
@Override
protected void initializePage() {
mSetupFingerprint = (TextView) mRootView.findViewById(R.id.setup_fingerprint);
mSetupFingerprint.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
launchFingerprintSetup();
}
});
}
@Override
protected int getLayoutResource() {
return R.layout.setup_fingerprint;
}
private void launchFingerprintSetup() {
Intent intent = new Intent(SetupWizardApp.ACTION_SETUP_FINGERPRINT);
intent.putExtra(SetupWizardApp.EXTRA_FIRST_RUN, true);
intent.putExtra(SetupWizardApp.EXTRA_ALLOW_SKIP, true);
intent.putExtra(SetupWizardApp.EXTRA_USE_IMMERSIVE, true);
intent.putExtra(SetupWizardApp.EXTRA_THEME, SetupWizardApp.EXTRA_MATERIAL_LIGHT);
intent.putExtra(SetupWizardApp.EXTRA_AUTO_FINISH, false);
/*intent.putExtra(LockPatternUtils.LOCKSCREEN_FINGERPRINT_FALLBACK, true);*/
intent.putExtra(SetupWizardApp.EXTRA_TITLE,
getString(R.string.settings_fingerprint_setup_title));
intent.putExtra(SetupWizardApp.EXTRA_DETAILS,
getString(R.string.settings_fingerprint_setup_details));
ActivityOptions options =
ActivityOptions.makeCustomAnimation(getActivity(),
android.R.anim.fade_in,
android.R.anim.fade_out);
SetupStats.addEvent(SetupStats.Categories.EXTERNAL_PAGE_LOAD,
SetupStats.Action.EXTERNAL_PAGE_LAUNCH,
SetupStats.Label.PAGE, SetupStats.Label.FINGERPRINT_SETUP);
startActivityForResult(intent, SetupWizardApp.REQUEST_CODE_SETUP_FINGERPRINT,
options.toBundle());
}
}
}