Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 421a05a6 authored by Cn Chen's avatar Cn Chen Committed by Android (Google) Code Review
Browse files

Merge "Font size page support light theme in deferred setup" into qt-dev

parents 9a252aa6 3eee5cf0
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -1448,6 +1448,16 @@
                <action android:name="android.settings.ACCESSIBILITY_SETTINGS_FOR_SUW" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
                android:value="com.android.settings.accessibility.AccessibilitySettingsForSetupWizard" />
            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                android:value="true" />
        </activity>

        <activity-alias
            android:name=".FontSizeSettingsForSetupWizardActivity"
            android:exported="true"
            android:targetActivity=".accessibility.AccessibilitySettingsForSetupWizardActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="com.android.settings.suggested.category.DISPLAY_SETTINGS" />
@@ -1458,9 +1468,7 @@
                android:value="true" />
            <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
                android:value="com.android.settings.accessibility.AccessibilitySettingsForSetupWizard" />
            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                android:value="true" />
        </activity>
        </activity-alias>

        <activity
            android:name="Settings$AccessibilityDaltonizerSettingsActivity"
+13 −0
Original line number Diff line number Diff line
@@ -234,4 +234,17 @@
        <item name="android:textColorSecondary">@*android:color/secondary_text_light</item>
    </style>

    <!-- Light theme for those pages inherit SubSettings and launched during setup flow -->
    <style name="LightTheme.SubSettings.SetupWizard" parent="@android:style/Theme.DeviceDefault.Light">
        <item name="android:windowLightStatusBar">true</item>
        <item name="android:statusBarColor">@android:color/white</item>
        <item name="android:navigationBarColor">@android:color/white</item>
        <item name="android:windowLightNavigationBar">true</item>
        <item name="android:windowBackground">@android:color/white</item>
        <item name="android:navigationBarDividerColor">@*android:color/navigation_bar_divider_device_default_settings</item>

        <item name="android:colorPrimary">@android:color/white</item>
        <item name="android:colorPrimaryDark">@android:color/white</item>
        <item name="android:colorAccent">@color/material_blue_700</item>
    </style>
</resources>
+6 −2
Original line number Diff line number Diff line
@@ -65,6 +65,8 @@ import com.android.settingslib.core.instrumentation.SharedPreferencesLogger;
import com.android.settingslib.development.DevelopmentSettingsEnabler;
import com.android.settingslib.drawer.DashboardCategory;

import com.google.android.setupcompat.util.WizardManagerHelper;

import java.util.ArrayList;
import java.util.List;

@@ -239,8 +241,10 @@ public class SettingsActivity extends SettingsBaseActivity
                intent.getBooleanExtra(EXTRA_SHOW_FRAGMENT_AS_SUBSETTING, false);

        // If this is a sub settings, then apply the SubSettings Theme for the ActionBar content
        // insets
        if (isSubSettings) {
        // insets.
        // If this is in setup flow, don't apply theme. Because light theme needs to be applied
        // in SettingsBaseActivity#onCreate().
        if (isSubSettings && !WizardManagerHelper.isAnySetupWizard(getIntent())) {
            setTheme(R.style.Theme_SubSettings);
        }

+16 −0
Original line number Diff line number Diff line
@@ -16,12 +16,18 @@

package com.android.settings;

import static com.google.android.setupcompat.util.WizardManagerHelper.EXTRA_IS_FIRST_RUN;
import static com.google.android.setupcompat.util.WizardManagerHelper.EXTRA_IS_SETUP_FLOW;

import android.content.Intent;
import android.os.Bundle;
import android.sysprop.SetupWizardProperties;

import com.google.android.setupcompat.util.WizardManagerHelper;
import com.google.android.setupdesign.util.ThemeHelper;

import java.util.Arrays;


public class SetupWizardUtils {

@@ -90,4 +96,14 @@ public class SetupWizardUtils {
    public static void copySetupExtras(Intent fromIntent, Intent toIntent) {
        WizardManagerHelper.copyWizardManagerExtras(fromIntent, toIntent);
    }

    public static Bundle copyLifecycleExtra(Bundle srcBundle, Bundle dstBundle) {
        for (String key :
                Arrays.asList(
                        EXTRA_IS_FIRST_RUN,
                        EXTRA_IS_SETUP_FLOW)) {
            dstBundle.putBoolean(key, srcBundle.getBoolean(key, false));
        }
        return dstBundle;
    }
}
+41 −0
Original line number Diff line number Diff line
@@ -16,23 +16,35 @@

package com.android.settings.accessibility;

import android.content.ComponentName;
import android.os.Bundle;
import android.util.Log;
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.SetupWizardUtils;
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 LOG_TAG = "A11ySettingsForSUW";
    private static final String SAVE_KEY_TITLE = "activity_title";

    @VisibleForTesting
    static final String CLASS_NAME_FONT_SIZE_SETTINGS_FOR_SUW =
            "com.android.settings.FontSizeSettingsForSetupWizardActivity";

    @Override
    protected void onSaveInstanceState(Bundle savedState) {
        savedState.putCharSequence(SAVE_KEY_TITLE, getTitle());
@@ -79,4 +91,33 @@ public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivit
                .launch();
        return true;
    }

    @Override
    protected void onCreate(Bundle savedState) {
        super.onCreate(savedState);

        tryLaunchFontSizeSettings();
    }

    @VisibleForTesting
    void tryLaunchFontSizeSettings() {
        if (WizardManagerHelper.isAnySetupWizard(getIntent())
                && new ComponentName(getPackageName(),
                CLASS_NAME_FONT_SIZE_SETTINGS_FOR_SUW).equals(
                getIntent().getComponent())) {
            final Bundle args = new Bundle();
            args.putInt(HelpResourceProvider.HELP_URI_RESOURCE_KEY, 0);
            args.putBoolean(SearchMenuController.NEED_SEARCH_ICON_IN_ACTION_BAR, false);
            final SubSettingLauncher subSettingLauncher = new SubSettingLauncher(this)
                    .setDestination(FontSizePreferenceFragmentForSetupWizard.class.getName())
                    .setArguments(args)
                    .setSourceMetricsCategory(Instrumentable.METRICS_CATEGORY_UNKNOWN)
                    .setExtras(SetupWizardUtils.copyLifecycleExtra(getIntent().getExtras(),
                            new Bundle()));

            Log.d(LOG_TAG, "Launch font size settings");
            subSettingLauncher.launch();
            finish();
        }
    }
}
Loading