Font size page support light theme in deferred setup.
Bug:124470158 Test: atest & manually test Change-Id: I41e1e98a9a64e516a294c4a94c8b5f335434078f
This commit is contained in:
@@ -1445,6 +1445,16 @@
|
|||||||
<action android:name="android.settings.ACCESSIBILITY_SETTINGS_FOR_SUW" />
|
<action android:name="android.settings.ACCESSIBILITY_SETTINGS_FOR_SUW" />
|
||||||
<category android:name="android.intent.category.DEFAULT" />
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
</intent-filter>
|
</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>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN" />
|
||||||
<category android:name="com.android.settings.suggested.category.DISPLAY_SETTINGS" />
|
<category android:name="com.android.settings.suggested.category.DISPLAY_SETTINGS" />
|
||||||
@@ -1455,9 +1465,7 @@
|
|||||||
android:value="true" />
|
android:value="true" />
|
||||||
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
||||||
android:value="com.android.settings.accessibility.AccessibilitySettingsForSetupWizard" />
|
android:value="com.android.settings.accessibility.AccessibilitySettingsForSetupWizard" />
|
||||||
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
|
</activity-alias>
|
||||||
android:value="true" />
|
|
||||||
</activity>
|
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name="Settings$AccessibilityDaltonizerSettingsActivity"
|
android:name="Settings$AccessibilityDaltonizerSettingsActivity"
|
||||||
|
@@ -231,4 +231,17 @@
|
|||||||
<item name="android:textColorSecondary">@*android:color/secondary_text_light</item>
|
<item name="android:textColorSecondary">@*android:color/secondary_text_light</item>
|
||||||
</style>
|
</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>
|
</resources>
|
||||||
|
@@ -51,7 +51,6 @@ import androidx.preference.PreferenceManager;
|
|||||||
import com.android.internal.util.ArrayUtils;
|
import com.android.internal.util.ArrayUtils;
|
||||||
import com.android.settings.Settings.WifiSettingsActivity;
|
import com.android.settings.Settings.WifiSettingsActivity;
|
||||||
import com.android.settings.applications.manageapplications.ManageApplications;
|
import com.android.settings.applications.manageapplications.ManageApplications;
|
||||||
import com.android.settings.backup.BackupSettingsHelper;
|
|
||||||
import com.android.settings.backup.UserBackupSettingsActivity;
|
import com.android.settings.backup.UserBackupSettingsActivity;
|
||||||
import com.android.settings.core.OnActivityResultListener;
|
import com.android.settings.core.OnActivityResultListener;
|
||||||
import com.android.settings.core.SettingsBaseActivity;
|
import com.android.settings.core.SettingsBaseActivity;
|
||||||
@@ -67,6 +66,8 @@ import com.android.settingslib.core.instrumentation.SharedPreferencesLogger;
|
|||||||
import com.android.settingslib.development.DevelopmentSettingsEnabler;
|
import com.android.settingslib.development.DevelopmentSettingsEnabler;
|
||||||
import com.android.settingslib.drawer.DashboardCategory;
|
import com.android.settingslib.drawer.DashboardCategory;
|
||||||
|
|
||||||
|
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -243,8 +244,10 @@ public class SettingsActivity extends SettingsBaseActivity
|
|||||||
intent.getBooleanExtra(EXTRA_SHOW_FRAGMENT_AS_SUBSETTING, false);
|
intent.getBooleanExtra(EXTRA_SHOW_FRAGMENT_AS_SUBSETTING, false);
|
||||||
|
|
||||||
// If this is a sub settings, then apply the SubSettings Theme for the ActionBar content
|
// If this is a sub settings, then apply the SubSettings Theme for the ActionBar content
|
||||||
// insets
|
// insets.
|
||||||
if (isSubSettings) {
|
// 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);
|
setTheme(R.style.Theme_SubSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -16,12 +16,18 @@
|
|||||||
|
|
||||||
package com.android.settings;
|
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.content.Intent;
|
||||||
|
import android.os.Bundle;
|
||||||
import android.sysprop.SetupWizardProperties;
|
import android.sysprop.SetupWizardProperties;
|
||||||
|
|
||||||
import com.google.android.setupcompat.util.WizardManagerHelper;
|
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||||
import com.google.android.setupdesign.util.ThemeHelper;
|
import com.google.android.setupdesign.util.ThemeHelper;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
|
||||||
public class SetupWizardUtils {
|
public class SetupWizardUtils {
|
||||||
|
|
||||||
@@ -90,4 +96,14 @@ public class SetupWizardUtils {
|
|||||||
public static void copySetupExtras(Intent fromIntent, Intent toIntent) {
|
public static void copySetupExtras(Intent fromIntent, Intent toIntent) {
|
||||||
WizardManagerHelper.copyWizardManagerExtras(fromIntent, 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;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
|
|
||||||
package com.android.settings.accessibility;
|
package com.android.settings.accessibility;
|
||||||
|
|
||||||
|
import android.content.ComponentName;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.util.Log;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
import android.view.accessibility.AccessibilityEvent;
|
import android.view.accessibility.AccessibilityEvent;
|
||||||
|
|
||||||
@@ -25,6 +27,7 @@ import androidx.preference.Preference;
|
|||||||
import androidx.preference.PreferenceFragmentCompat;
|
import androidx.preference.PreferenceFragmentCompat;
|
||||||
|
|
||||||
import com.android.settings.SettingsActivity;
|
import com.android.settings.SettingsActivity;
|
||||||
|
import com.android.settings.SetupWizardUtils;
|
||||||
import com.android.settings.core.SubSettingLauncher;
|
import com.android.settings.core.SubSettingLauncher;
|
||||||
import com.android.settings.display.FontSizePreferenceFragmentForSetupWizard;
|
import com.android.settings.display.FontSizePreferenceFragmentForSetupWizard;
|
||||||
import com.android.settings.search.actionbar.SearchMenuController;
|
import com.android.settings.search.actionbar.SearchMenuController;
|
||||||
@@ -35,10 +38,12 @@ import com.google.android.setupcompat.util.WizardManagerHelper;
|
|||||||
|
|
||||||
public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivity {
|
public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivity {
|
||||||
|
|
||||||
|
private static final String LOG_TAG = "A11ySettingsForSUW";
|
||||||
private static final String SAVE_KEY_TITLE = "activity_title";
|
private static final String SAVE_KEY_TITLE = "activity_title";
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static final String EXTRA_GO_TO_FONT_SIZE_PREFERENCE = "go_to_font_size_preference";
|
static final String CLASS_NAME_FONT_SIZE_SETTINGS_FOR_SUW =
|
||||||
|
"com.android.settings.FontSizeSettingsForSetupWizardActivity";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onSaveInstanceState(Bundle savedState) {
|
protected void onSaveInstanceState(Bundle savedState) {
|
||||||
@@ -91,21 +96,27 @@ public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivit
|
|||||||
protected void onCreate(Bundle savedState) {
|
protected void onCreate(Bundle savedState) {
|
||||||
super.onCreate(savedState);
|
super.onCreate(savedState);
|
||||||
|
|
||||||
tryLaunchFontSizePreference();
|
tryLaunchFontSizeSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
void tryLaunchFontSizePreference() {
|
void tryLaunchFontSizeSettings() {
|
||||||
if (WizardManagerHelper.isAnySetupWizard(getIntent()) && getIntent().getBooleanExtra(
|
if (WizardManagerHelper.isAnySetupWizard(getIntent())
|
||||||
EXTRA_GO_TO_FONT_SIZE_PREFERENCE, false)) {
|
&& new ComponentName(getPackageName(),
|
||||||
Bundle args = new Bundle();
|
CLASS_NAME_FONT_SIZE_SETTINGS_FOR_SUW).equals(
|
||||||
|
getIntent().getComponent())) {
|
||||||
|
final Bundle args = new Bundle();
|
||||||
args.putInt(HelpResourceProvider.HELP_URI_RESOURCE_KEY, 0);
|
args.putInt(HelpResourceProvider.HELP_URI_RESOURCE_KEY, 0);
|
||||||
args.putBoolean(SearchMenuController.NEED_SEARCH_ICON_IN_ACTION_BAR, false);
|
args.putBoolean(SearchMenuController.NEED_SEARCH_ICON_IN_ACTION_BAR, false);
|
||||||
new SubSettingLauncher(this)
|
final SubSettingLauncher subSettingLauncher = new SubSettingLauncher(this)
|
||||||
.setDestination(FontSizePreferenceFragmentForSetupWizard.class.getName())
|
.setDestination(FontSizePreferenceFragmentForSetupWizard.class.getName())
|
||||||
.setArguments(args)
|
.setArguments(args)
|
||||||
.setSourceMetricsCategory(Instrumentable.METRICS_CATEGORY_UNKNOWN)
|
.setSourceMetricsCategory(Instrumentable.METRICS_CATEGORY_UNKNOWN)
|
||||||
.launch();
|
.setExtras(SetupWizardUtils.copyLifecycleExtra(getIntent().getExtras(),
|
||||||
|
new Bundle()));
|
||||||
|
|
||||||
|
Log.d(LOG_TAG, "Launch font size settings");
|
||||||
|
subSettingLauncher.launch();
|
||||||
finish();
|
finish();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -37,8 +37,11 @@ import android.widget.Toolbar;
|
|||||||
import androidx.fragment.app.FragmentActivity;
|
import androidx.fragment.app.FragmentActivity;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.SubSettings;
|
||||||
import com.android.settings.dashboard.CategoryManager;
|
import com.android.settings.dashboard.CategoryManager;
|
||||||
|
|
||||||
|
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -65,6 +68,10 @@ public class SettingsBaseActivity extends FragmentActivity {
|
|||||||
if (!theme.getBoolean(android.R.styleable.Theme_windowNoTitle, false)) {
|
if (!theme.getBoolean(android.R.styleable.Theme_windowNoTitle, false)) {
|
||||||
requestWindowFeature(Window.FEATURE_NO_TITLE);
|
requestWindowFeature(Window.FEATURE_NO_TITLE);
|
||||||
}
|
}
|
||||||
|
// Apply SetupWizard light theme during setup flow. This is for SubSettings pages.
|
||||||
|
if (WizardManagerHelper.isAnySetupWizard(getIntent()) && this instanceof SubSettings) {
|
||||||
|
setTheme(R.style.LightTheme_SubSettings_SetupWizard);
|
||||||
|
}
|
||||||
super.setContentView(R.layout.settings_base_layout);
|
super.setContentView(R.layout.settings_base_layout);
|
||||||
|
|
||||||
final Toolbar toolbar = findViewById(R.id.action_bar);
|
final Toolbar toolbar = findViewById(R.id.action_bar);
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.core;
|
|||||||
import android.annotation.StringRes;
|
import android.annotation.StringRes;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
@@ -89,6 +90,11 @@ public class SubSettingLauncher {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public SubSettingLauncher setExtras(Bundle extras) {
|
||||||
|
mLaunchRequest.extras = extras;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public SubSettingLauncher setSourceMetricsCategory(int sourceMetricsCategory) {
|
public SubSettingLauncher setSourceMetricsCategory(int sourceMetricsCategory) {
|
||||||
mLaunchRequest.sourceMetricsCategory = sourceMetricsCategory;
|
mLaunchRequest.sourceMetricsCategory = sourceMetricsCategory;
|
||||||
return this;
|
return this;
|
||||||
@@ -136,6 +142,7 @@ public class SubSettingLauncher {
|
|||||||
|
|
||||||
public Intent toIntent() {
|
public Intent toIntent() {
|
||||||
final Intent intent = new Intent(Intent.ACTION_MAIN);
|
final Intent intent = new Intent(Intent.ACTION_MAIN);
|
||||||
|
copyExtras(intent);
|
||||||
intent.setClass(mContext, SubSettings.class);
|
intent.setClass(mContext, SubSettings.class);
|
||||||
if (TextUtils.isEmpty(mLaunchRequest.destinationName)) {
|
if (TextUtils.isEmpty(mLaunchRequest.destinationName)) {
|
||||||
throw new IllegalArgumentException("Destination fragment must be set");
|
throw new IllegalArgumentException("Destination fragment must be set");
|
||||||
@@ -180,6 +187,11 @@ public class SubSettingLauncher {
|
|||||||
listener.startActivityForResult(intent, requestCode);
|
listener.startActivityForResult(intent, requestCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void copyExtras(Intent intent) {
|
||||||
|
if (mLaunchRequest.extras != null) {
|
||||||
|
intent.replaceExtras(mLaunchRequest.extras);
|
||||||
|
}
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Simple container that has information about how to launch a subsetting.
|
* Simple container that has information about how to launch a subsetting.
|
||||||
*/
|
*/
|
||||||
@@ -194,5 +206,6 @@ public class SubSettingLauncher {
|
|||||||
int mRequestCode;
|
int mRequestCode;
|
||||||
UserHandle userHandle;
|
UserHandle userHandle;
|
||||||
Bundle arguments;
|
Bundle arguments;
|
||||||
|
Bundle extras;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings;
|
|||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
import android.os.Bundle;
|
||||||
import android.sysprop.SetupWizardProperties;
|
import android.sysprop.SetupWizardProperties;
|
||||||
|
|
||||||
import com.google.android.setupcompat.util.WizardManagerHelper;
|
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||||
@@ -31,9 +32,6 @@ import org.robolectric.RobolectricTestRunner;
|
|||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
public class SetupWizardUtilsTest {
|
public class SetupWizardUtilsTest {
|
||||||
|
|
||||||
private static final String EXTRA_IS_SETUP_FLOW = "isSetupFlow";
|
|
||||||
private static final String EXTRA_IS_FIRST_RUN = "firstRun";
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCopySetupExtras() {
|
public void testCopySetupExtras() {
|
||||||
Intent fromIntent = new Intent();
|
Intent fromIntent = new Intent();
|
||||||
@@ -46,6 +44,25 @@ public class SetupWizardUtilsTest {
|
|||||||
assertThat(theme).isEqualTo(toIntent.getStringExtra(WizardManagerHelper.EXTRA_THEME));
|
assertThat(theme).isEqualTo(toIntent.getStringExtra(WizardManagerHelper.EXTRA_THEME));
|
||||||
assertThat(toIntent.getBooleanExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, false))
|
assertThat(toIntent.getBooleanExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, false))
|
||||||
.isTrue();
|
.isTrue();
|
||||||
|
assertThat(toIntent.getBooleanExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, true))
|
||||||
|
.isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCopyLifecycleExtra() {
|
||||||
|
Intent fromIntent = new Intent();
|
||||||
|
final String theme = "TEST_THEME";
|
||||||
|
fromIntent.putExtra(WizardManagerHelper.EXTRA_THEME, theme);
|
||||||
|
fromIntent.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true);
|
||||||
|
Bundle dstBundle = new Bundle();
|
||||||
|
dstBundle = SetupWizardUtils.copyLifecycleExtra(fromIntent.getExtras(), dstBundle);
|
||||||
|
|
||||||
|
assertThat(dstBundle).isNotNull();
|
||||||
|
assertThat(dstBundle.getString(WizardManagerHelper.EXTRA_THEME)).isNull();
|
||||||
|
assertThat(dstBundle.getBoolean(WizardManagerHelper.EXTRA_IS_SETUP_FLOW))
|
||||||
|
.isTrue();
|
||||||
|
assertThat(dstBundle.getBoolean(WizardManagerHelper.EXTRA_IS_FIRST_RUN))
|
||||||
|
.isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -87,7 +104,7 @@ public class SetupWizardUtilsTest {
|
|||||||
|
|
||||||
private Intent createSetupWizardIntent() {
|
private Intent createSetupWizardIntent() {
|
||||||
return new Intent()
|
return new Intent()
|
||||||
.putExtra(EXTRA_IS_SETUP_FLOW, true)
|
.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true)
|
||||||
.putExtra(EXTRA_IS_FIRST_RUN, true);
|
.putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,10 +16,11 @@
|
|||||||
|
|
||||||
package com.android.settings.accessibility;
|
package com.android.settings.accessibility;
|
||||||
|
|
||||||
import static com.android.settings.accessibility.AccessibilitySettingsForSetupWizardActivity.EXTRA_GO_TO_FONT_SIZE_PREFERENCE;
|
import static com.android.settings.accessibility.AccessibilitySettingsForSetupWizardActivity.CLASS_NAME_FONT_SIZE_SETTINGS_FOR_SUW;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
|
import android.content.ComponentName;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
|
||||||
import androidx.test.filters.SmallTest;
|
import androidx.test.filters.SmallTest;
|
||||||
@@ -28,11 +29,13 @@ import com.android.settings.R;
|
|||||||
import com.android.settings.SettingsActivity;
|
import com.android.settings.SettingsActivity;
|
||||||
import com.android.settings.display.FontSizePreferenceFragmentForSetupWizard;
|
import com.android.settings.display.FontSizePreferenceFragmentForSetupWizard;
|
||||||
|
|
||||||
import org.junit.Ignore;
|
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.robolectric.Robolectric;
|
import org.robolectric.Robolectric;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
|
import org.robolectric.RuntimeEnvironment;
|
||||||
import org.robolectric.Shadows;
|
import org.robolectric.Shadows;
|
||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
@@ -49,14 +52,15 @@ public class AccessibilitySettingsForSetupWizardActivityTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
public void onCreate_hasFontSizeComponent_shouldGoToFontSizePreferenceDirectly() {
|
||||||
public void onCreate_whenHasFontSizeExtra_shouldGoToFontSizePreferenceDirectly() {
|
|
||||||
AccessibilitySettingsForSetupWizardActivity activity =
|
AccessibilitySettingsForSetupWizardActivity activity =
|
||||||
Robolectric.buildActivity(AccessibilitySettingsForSetupWizardActivity.class,
|
Robolectric.buildActivity(AccessibilitySettingsForSetupWizardActivity.class,
|
||||||
new Intent().putExtra(EXTRA_GO_TO_FONT_SIZE_PREFERENCE, true).
|
new Intent(Intent.ACTION_MAIN).setComponent(new ComponentName(
|
||||||
putExtra("isSetupFlow", true)).get();
|
RuntimeEnvironment.application, CLASS_NAME_FONT_SIZE_SETTINGS_FOR_SUW)).
|
||||||
|
putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, true).
|
||||||
|
putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true)).get();
|
||||||
|
|
||||||
activity.tryLaunchFontSizePreference();
|
activity.tryLaunchFontSizeSettings();
|
||||||
|
|
||||||
final Intent launchIntent = Shadows.shadowOf(activity).getNextStartedActivity();
|
final Intent launchIntent = Shadows.shadowOf(activity).getNextStartedActivity();
|
||||||
assertThat(launchIntent).isNotNull();
|
assertThat(launchIntent).isNotNull();
|
||||||
@@ -64,4 +68,19 @@ public class AccessibilitySettingsForSetupWizardActivityTest {
|
|||||||
FontSizePreferenceFragmentForSetupWizard.class.getName());
|
FontSizePreferenceFragmentForSetupWizard.class.getName());
|
||||||
assertThat(activity.isFinishing()).isTrue();
|
assertThat(activity.isFinishing()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void onCreate_noFontSizeComponent_shouldNotFinishCurrentActivity() {
|
||||||
|
AccessibilitySettingsForSetupWizardActivity activity =
|
||||||
|
Robolectric.buildActivity(AccessibilitySettingsForSetupWizardActivity.class,
|
||||||
|
new Intent(Intent.ACTION_MAIN).
|
||||||
|
putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, true).
|
||||||
|
putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true)).get();
|
||||||
|
|
||||||
|
activity.tryLaunchFontSizeSettings();
|
||||||
|
|
||||||
|
final Intent launchIntent = Shadows.shadowOf(activity).getNextStartedActivity();
|
||||||
|
assertThat(launchIntent).isNull();
|
||||||
|
assertThat(activity.isFinishing()).isFalse();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user