Merge "[Settings] Avoids disabled component when page start from setup wizard." into rvc-dev

This commit is contained in:
Alex Li
2020-06-22 03:59:30 +00:00
committed by Android (Google) Code Review
2 changed files with 18 additions and 1 deletions

View File

@@ -20,9 +20,12 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import com.android.settings.notification.RedactionInterstitial;
import com.google.android.setupcompat.util.WizardManagerHelper;
/**
* Setup Wizard's version of RedactionInterstitial screen. It inherits the logic and basic structure
* from RedactionInterstitial class, and should remain similar to that behaviorally. This class
@@ -46,6 +49,15 @@ public class SetupRedactionInterstitial extends RedactionInterstitial {
PackageManager.DONT_KILL_APP);
}
@Override
protected void onCreate(Bundle savedInstance) {
// Only allow to start the activity from Setup Wizard.
if (!WizardManagerHelper.isAnySetupWizard(getIntent())) {
finish();
}
super.onCreate(savedInstance);
}
@Override
public Intent getIntent() {
Intent modIntent = new Intent(super.getIntent());

View File

@@ -48,6 +48,7 @@ import com.android.settingslib.RestrictedLockUtilsInternal;
import com.google.android.setupcompat.template.FooterBarMixin;
import com.google.android.setupcompat.template.FooterButton;
import com.google.android.setupcompat.util.WizardManagerHelper;
import com.google.android.setupdesign.GlifLayout;
public class RedactionInterstitial extends SettingsActivity {
@@ -144,7 +145,11 @@ public class RedactionInterstitial extends SettingsActivity {
}
private void onDoneButtonClicked(View view) {
SetupRedactionInterstitial.setEnabled(getContext(), false);
// If the activity starts by Setup Wizard, then skip disable component which avoids the
// framework force closing all activities on the same task when the system is busy.
if (!WizardManagerHelper.isAnySetupWizard(getIntent())) {
SetupRedactionInterstitial.setEnabled(getContext(), false);
}
final RedactionInterstitial activity = (RedactionInterstitial) getActivity();
if (activity != null) {
activity.setResult(RESULT_OK, null);