Show split screen dialog on the introduction and enrolling page.

Revert ag/22361082 and ag/22460413, show the split screen dialog on
the introduction and enrolling page, instead of relying on the callers
to show the dialog.

Test: atest BiometricsSplitScreenDialogTest
Test: atest FaceEnrollIntroductionTest
Test: atest SetupFingerprintEnrollIntroductionTest
Bug: 299573056

Change-Id: Ieb106a4a623ad5ca0e6eb1633413df75767bef52
This commit is contained in:
Hao Dong
2024-02-01 02:00:14 +00:00
parent 911d85a9fd
commit c9aaa73b51
17 changed files with 294 additions and 271 deletions

View File

@@ -40,6 +40,7 @@ import com.android.settings.biometrics.fingerprint.FingerprintEnrollEnrolling;
import com.android.settings.core.InstrumentedActivity;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settingslib.activityembedding.ActivityEmbeddingUtils;
import com.android.systemui.unfold.compat.ScreenSizeFoldProvider;
import com.android.systemui.unfold.updates.FoldProvider;
@@ -173,6 +174,14 @@ public abstract class BiometricEnrollBase extends InstrumentedActivity {
mUserId = getIntent().getIntExtra(Intent.EXTRA_USER_ID, UserHandle.myUserId());
mPostureGuidanceIntent = FeatureFactory.getFeatureFactory()
.getFaceFeatureProvider().getPostureGuidanceIntent(getApplicationContext());
// Remove the existing split screen dialog.
BiometricsSplitScreenDialog dialog =
(BiometricsSplitScreenDialog) getSupportFragmentManager()
.findFragmentByTag(BiometricsSplitScreenDialog.class.getName());
if (dialog != null) {
getSupportFragmentManager().beginTransaction().remove(dialog).commit();
}
}
@Override
@@ -338,4 +347,8 @@ public abstract class BiometricEnrollBase extends InstrumentedActivity {
final ColorStateList stateList = Utils.getColorAttr(this, android.R.attr.windowBackground);
return stateList != null ? stateList.getDefaultColor() : Color.TRANSPARENT;
}
protected boolean shouldShowSplitScreenDialog() {
return isInMultiWindowMode() && !ActivityEmbeddingUtils.isActivityEmbedded(this);
}
}