diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java index 4ca1c2cb688..cde2aca820c 100644 --- a/src/com/android/settings/SettingsActivity.java +++ b/src/com/android/settings/SettingsActivity.java @@ -62,6 +62,7 @@ import com.android.settings.core.SubSettingLauncher; import com.android.settings.core.gateway.SettingsGateway; import com.android.settings.dashboard.DashboardFeatureProvider; import com.android.settings.dashboard.DashboardSummary; +import com.android.settings.homepage.TopLevelSettings; import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.DeviceIndexFeatureProvider; import com.android.settings.wfd.WifiDisplaySettings; @@ -403,8 +404,13 @@ public class SettingsActivity extends SettingsBaseActivity // Show search icon as up affordance if we are displaying the main Dashboard mInitialTitleResId = R.string.dashboard_title; - switchToFragment(DashboardSummary.class.getName(), null /* args */, false, false, - mInitialTitleResId, mInitialTitle, false); + if (SettingsHomepageActivity.isDynamicHomepageEnabled(this)) { + switchToFragment(TopLevelSettings.class.getName(), null /* args */, false, false, + mInitialTitleResId, mInitialTitle, false); + } else { + switchToFragment(DashboardSummary.class.getName(), null /* args */, false, false, + mInitialTitleResId, mInitialTitle, false); + } } } diff --git a/src/com/android/settings/SettingsHomepageActivity.java b/src/com/android/settings/SettingsHomepageActivity.java index de25cf4e27a..77155e00000 100644 --- a/src/com/android/settings/SettingsHomepageActivity.java +++ b/src/com/android/settings/SettingsHomepageActivity.java @@ -29,6 +29,7 @@ import com.android.settings.core.FeatureFlags; import com.android.settings.core.SettingsBaseActivity; import com.android.settings.dashboard.DashboardSummary; import com.android.settings.homepage.PersonalSettingsFragment; +import com.android.settings.homepage.TopLevelSettings; import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.SearchFeatureProvider; @@ -58,8 +59,7 @@ public class SettingsHomepageActivity extends SettingsBaseActivity { FeatureFactory.getFactory(this).getSearchFeatureProvider() .initSearchToolbar(this, searchButton); - final BottomNavigationView navigation = (BottomNavigationView) findViewById( - R.id.bottom_nav); + final BottomNavigationView navigation = findViewById(R.id.bottom_nav); navigation.setOnNavigationItemSelectedListener(item -> { switch (item.getItemId()) { case R.id.homepage_personal_settings: @@ -68,7 +68,7 @@ public class SettingsHomepageActivity extends SettingsBaseActivity { return true; case R.id.homepage_all_settings: - switchFragment(DashboardSummary.class.getName(), ALL_SETTINGS_TAG, + switchFragment(TopLevelSettings.class.getName(), ALL_SETTINGS_TAG, PERSONAL_SETTINGS_TAG); return true; } diff --git a/src/com/android/settings/homepage/PersonalSettingsFragment.java b/src/com/android/settings/homepage/PersonalSettingsFragment.java index b515e294071..1894e5e3696 100644 --- a/src/com/android/settings/homepage/PersonalSettingsFragment.java +++ b/src/com/android/settings/homepage/PersonalSettingsFragment.java @@ -54,7 +54,7 @@ public class PersonalSettingsFragment extends InstrumentedFragment { Bundle savedInstanceState) { final View rootView = inflater.inflate(R.layout.settings_homepage, container, false); - mCardsContainer = (RecyclerView) rootView.findViewById(R.id.card_container); + mCardsContainer = rootView.findViewById(R.id.card_container); mLayoutManager = new GridLayoutManager(getActivity(), SPAN_COUNT, LinearLayoutManager.VERTICAL, false /* reverseLayout */); mCardsContainer.setLayoutManager(mLayoutManager); diff --git a/tests/robotests/src/com/android/settings/SettingsActivityTest.java b/tests/robotests/src/com/android/settings/SettingsActivityTest.java index 723978f9bb1..409512eb140 100644 --- a/tests/robotests/src/com/android/settings/SettingsActivityTest.java +++ b/tests/robotests/src/com/android/settings/SettingsActivityTest.java @@ -73,10 +73,11 @@ public class SettingsActivityTest { Global.putInt(mContext.getContentResolver(), Global.DEVICE_PROVISIONED, 0); final Intent intent = new Intent(mContext, Settings.class); final SettingsActivity activity = - Robolectric.buildActivity(SettingsActivity.class, intent).create(Bundle.EMPTY).get(); + Robolectric.buildActivity(SettingsActivity.class, intent).create( + Bundle.EMPTY).get(); assertThat(activity.findViewById(R.id.search_bar).getVisibility()) - .isEqualTo(View.INVISIBLE); + .isEqualTo(View.INVISIBLE); } @Test @@ -84,7 +85,8 @@ public class SettingsActivityTest { Global.putInt(mContext.getContentResolver(), Global.DEVICE_PROVISIONED, 1); final Intent intent = new Intent(mContext, Settings.class); final SettingsActivity activity = - Robolectric.buildActivity(SettingsActivity.class, intent).create(Bundle.EMPTY).get(); + Robolectric.buildActivity(SettingsActivity.class, intent).create( + Bundle.EMPTY).get(); assertThat(activity.findViewById(R.id.search_bar).getVisibility()).isEqualTo(View.VISIBLE); } @@ -92,6 +94,7 @@ public class SettingsActivityTest { @Test public void launchSettingFragment_nullExtraShowFragment_shouldNotCrash() { when(mActivity.getSupportFragmentManager()).thenReturn(mFragmentManager); + doReturn(mContext.getContentResolver()).when(mActivity).getContentResolver(); when(mFragmentManager.beginTransaction()).thenReturn(mock(FragmentTransaction.class)); doReturn(RuntimeEnvironment.application.getClassLoader()).when(mActivity).getClassLoader();