18d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam/* 28d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * Copyright (C) 2015 The Android Open Source Project 38d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * 48d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * Licensed under the Apache License, Version 2.0 (the "License"); 58d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * you may not use this file except in compliance with the License. 68d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * You may obtain a copy of the License at 78d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * 88d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * http://www.apache.org/licenses/LICENSE-2.0 98d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * 108d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * Unless required by applicable law or agreed to in writing, software 118d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * distributed under the License is distributed on an "AS IS" BASIS, 128d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 138d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * See the License for the specific language governing permissions and 148d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam * limitations under the License 158d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam */ 168d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 178d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lampackage com.android.settings.fingerprint; 188d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 198d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport android.content.Intent; 208d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport android.content.res.Resources; 21cce5339da7b8fa348bdd7296500006d0b4b26b78Udam Sainiimport android.os.UserHandle; 228d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport android.view.View; 238d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport android.widget.Button; 248d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 259d1bfd1e8de6e46137a9571507c03526880d6a46Chris Wrenimport com.android.internal.logging.MetricsProto.MetricsEvent; 268d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport com.android.settings.ChooseLockSettingsHelper; 278d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport com.android.settings.R; 288d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport com.android.settings.SetupWizardUtils; 298d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lamimport com.android.setupwizardlib.view.NavigationBar; 308d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 318d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lampublic class SetupFingerprintEnrollFindSensor extends FingerprintEnrollFindSensor 328d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam implements NavigationBar.NavigationBarListener { 338d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 348d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam @Override 35823cddc06858ad8d0f99c6dc1f296056d8c396a7Udam Saini protected int getContentView() { 36823cddc06858ad8d0f99c6dc1f296056d8c396a7Udam Saini return R.layout.setup_fingerprint_enroll_find_sensor; 37823cddc06858ad8d0f99c6dc1f296056d8c396a7Udam Saini } 38823cddc06858ad8d0f99c6dc1f296056d8c396a7Udam Saini 39823cddc06858ad8d0f99c6dc1f296056d8c396a7Udam Saini @Override 408d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam protected Intent getEnrollingIntent() { 418d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam Intent intent = new Intent(this, SetupFingerprintEnrollEnrolling.class); 428d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN, mToken); 43cce5339da7b8fa348bdd7296500006d0b4b26b78Udam Saini if (mUserId != UserHandle.USER_NULL) { 44cce5339da7b8fa348bdd7296500006d0b4b26b78Udam Saini intent.putExtra(Intent.EXTRA_USER_ID, mUserId); 45cce5339da7b8fa348bdd7296500006d0b4b26b78Udam Saini } 468d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam SetupWizardUtils.copySetupExtras(getIntent(), intent); 478d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam return intent; 488d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 498d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 508d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam @Override 518d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { 528d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam resid = SetupWizardUtils.getTheme(getIntent()); 538d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam super.onApplyThemeResource(theme, resid, first); 548d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 558d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 568d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam @Override 578d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam protected void initViews() { 588d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam SetupWizardUtils.setImmersiveMode(this); 598d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 608d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam final View nextButton = findViewById(R.id.next_button); 618d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam if (nextButton != null) { 628d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam nextButton.setVisibility(View.GONE); 638d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 648d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 658d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam getNavigationBar().setNavigationBarListener(this); 668d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam getNavigationBar().getBackButton().setVisibility(View.GONE); 678d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 688d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 698d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam @Override 708d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam protected Button getNextButton() { 718d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam return getNavigationBar().getNextButton(); 728d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 738d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 748d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam @Override 758d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam public void onNavigateBack() { 768d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam onBackPressed(); 778d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 788d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam 798d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam @Override 808d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam public void onNavigateNext() { 818d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam onNextButtonClick(); 828d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam } 831b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren 841b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren @Override 851b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren protected int getMetricsCategory() { 869d1bfd1e8de6e46137a9571507c03526880d6a46Chris Wren return MetricsEvent.FINGERPRINT_FIND_SENSOR_SETUP; 871b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren } 888d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam} 89