"Change font size" tile should go to settings' font size page directly

Test: atest & manual test
Bug: 131374325
Change-Id: I878da8c22e315100ae50d3d34ff218c5d14e81d8
This commit is contained in:
cnchen
2019-04-29 15:45:26 +08:00
parent 5ed1e2db38
commit 1c67af1762
2 changed files with 51 additions and 0 deletions

View File

@@ -20,19 +20,26 @@ import android.os.Bundle;
import android.view.Menu;
import android.view.accessibility.AccessibilityEvent;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import com.android.settings.SettingsActivity;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.display.FontSizePreferenceFragmentForSetupWizard;
import com.android.settings.search.actionbar.SearchMenuController;
import com.android.settings.support.actionbar.HelpResourceProvider;
import com.android.settingslib.core.instrumentation.Instrumentable;
import com.google.android.setupcompat.util.WizardManagerHelper;
public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivity {
private static final String SAVE_KEY_TITLE = "activity_title";
@VisibleForTesting
static final String EXTRA_GO_TO_FONT_SIZE_PREFERENCE = "go_to_font_size_preference";
@Override
protected void onSaveInstanceState(Bundle savedState) {
savedState.putCharSequence(SAVE_KEY_TITLE, getTitle());
@@ -79,4 +86,27 @@ public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivit
.launch();
return true;
}
@Override
protected void onCreate(Bundle savedState) {
super.onCreate(savedState);
tryLaunchFontSizePreference();
}
@VisibleForTesting
void tryLaunchFontSizePreference() {
if (WizardManagerHelper.isAnySetupWizard(getIntent()) && getIntent().getBooleanExtra(
EXTRA_GO_TO_FONT_SIZE_PREFERENCE, false)) {
Bundle args = new Bundle();
args.putInt(HelpResourceProvider.HELP_URI_RESOURCE_KEY, 0);
args.putBoolean(SearchMenuController.NEED_SEARCH_ICON_IN_ACTION_BAR, false);
new SubSettingLauncher(this)
.setDestination(FontSizePreferenceFragmentForSetupWizard.class.getName())
.setArguments(args)
.setSourceMetricsCategory(Instrumentable.METRICS_CATEGORY_UNKNOWN)
.launch();
finish();
}
}
}