diff --git a/res/values/config.xml b/res/values/config.xml index fc2ca1f89e1..86be2cb91a4 100755 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -434,4 +434,7 @@ + + + false diff --git a/src/com/android/settings/AllInOneTetherSettings.java b/src/com/android/settings/AllInOneTetherSettings.java index fbf0280239e..1c7ea1d5ce1 100644 --- a/src/com/android/settings/AllInOneTetherSettings.java +++ b/src/com/android/settings/AllInOneTetherSettings.java @@ -201,7 +201,7 @@ public final class AllInOneTetherSettings extends RestrictedDashboardFragment // Assume we are in a SettingsActivity. This is only safe because we currently use // SettingsActivity as base for all preference fragments. final SettingsActivity activity = (SettingsActivity) getActivity(); - BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter(); + final BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter(); if (adapter != null) { adapter.getProfileProxy(activity.getApplicationContext(), mProfileServiceListener, BluetoothProfile.PAN); @@ -404,6 +404,12 @@ public final class AllInOneTetherSettings extends RestrictedDashboardFragment return keys; } + @Override + protected boolean isPageSearchEnabled(Context context) { + return context.getResources().getBoolean( + R.bool.config_show_all_in_one_tether_settings); + } + @Override public List createPreferenceControllers( Context context) { diff --git a/src/com/android/settings/TetherSettings.java b/src/com/android/settings/TetherSettings.java index c5407c583f3..da86cbf8b78 100644 --- a/src/com/android/settings/TetherSettings.java +++ b/src/com/android/settings/TetherSettings.java @@ -450,6 +450,12 @@ public class TetherSettings extends RestrictedSettingsFragment return Arrays.asList(sir); } + @Override + protected boolean isPageSearchEnabled(Context context) { + return !context.getResources().getBoolean( + R.bool.config_show_all_in_one_tether_settings); + } + @Override public List getNonIndexableKeys(Context context) { final List keys = super.getNonIndexableKeys(context); diff --git a/src/com/android/settings/network/TetherPreferenceController.java b/src/com/android/settings/network/TetherPreferenceController.java index 0d4a6a6189c..5e526924aac 100644 --- a/src/com/android/settings/network/TetherPreferenceController.java +++ b/src/com/android/settings/network/TetherPreferenceController.java @@ -109,6 +109,10 @@ public class TetherPreferenceController extends AbstractPreferenceController imp // Grey out if provisioning is not available. mPreference.setEnabled(!TetherSettings.isProvisioningNeededButUnavailable(mContext)); + + if (mContext.getResources().getBoolean(R.bool.config_show_all_in_one_tether_settings)) { + mPreference.setFragment("com.android.settings.AllInOneTetherSettings"); + } } } diff --git a/src/com/android/settings/wifi/tether/WifiTetherSettings.java b/src/com/android/settings/wifi/tether/WifiTetherSettings.java index 3c4a0012ddb..46655151873 100644 --- a/src/com/android/settings/wifi/tether/WifiTetherSettings.java +++ b/src/com/android/settings/wifi/tether/WifiTetherSettings.java @@ -257,6 +257,12 @@ public class WifiTetherSettings extends RestrictedDashboardFragment return keys; } + @Override + protected boolean isPageSearchEnabled(Context context) { + return !context.getResources().getBoolean( + R.bool.config_show_all_in_one_tether_settings); + } + @Override public List createPreferenceControllers( Context context) { diff --git a/tests/robotests/src/com/android/settings/AllInOneTetherSettingsTest.java b/tests/robotests/src/com/android/settings/AllInOneTetherSettingsTest.java index 51c856a0193..37a3474b4f4 100644 --- a/tests/robotests/src/com/android/settings/AllInOneTetherSettingsTest.java +++ b/tests/robotests/src/com/android/settings/AllInOneTetherSettingsTest.java @@ -69,18 +69,21 @@ public class AllInOneTetherSettingsTest { } @Test - public void getNonIndexableKeys_tetherAvailable_keysNotReturned() { + public void getNonIndexableKeys_tetherAvailable_keysReturned() { // To let TetherUtil.isTetherAvailable return true, select one of the combinations setupIsTetherAvailable(true); final List niks = AllInOneTetherSettings.SEARCH_INDEX_DATA_PROVIDER.getNonIndexableKeys(mContext); - assertThat(niks).doesNotContain(AllInOneTetherSettings.KEY_WIFI_TETHER_NETWORK_NAME); - assertThat(niks).doesNotContain(AllInOneTetherSettings.KEY_WIFI_TETHER_NETWORK_PASSWORD); - assertThat(niks).doesNotContain(AllInOneTetherSettings.KEY_WIFI_TETHER_AUTO_OFF); - assertThat(niks).doesNotContain(AllInOneTetherSettings.KEY_WIFI_TETHER_NETWORK_AP_BAND); - assertThat(niks).doesNotContain(AllInOneTetherSettings.KEY_TETHER_PREFS_SCREEN); + // TODO(b/147675042) Should revert these assertions, after switching to new UI. + // Because of the config check, we are not indexing these keys. Once we enable the config + // these assert would also need to change. + assertThat(niks).contains(AllInOneTetherSettings.KEY_WIFI_TETHER_NETWORK_NAME); + assertThat(niks).contains(AllInOneTetherSettings.KEY_WIFI_TETHER_NETWORK_PASSWORD); + assertThat(niks).contains(AllInOneTetherSettings.KEY_WIFI_TETHER_AUTO_OFF); + assertThat(niks).contains(AllInOneTetherSettings.KEY_WIFI_TETHER_NETWORK_AP_BAND); + assertThat(niks).contains(AllInOneTetherSettings.KEY_TETHER_PREFS_SCREEN); } @Test