Hide "Lanauage" in search to avoid dupe results.
Change-Id: I607ac2150912bfa6ca05e6f977daab7fd90a9637 Fixes: 67515153 Test: robotests
This commit is contained in:
@@ -177,7 +177,6 @@ public class LanguageAndInputSettings extends DashboardFragment {
|
||||
// Duplicates in summary and details pages.
|
||||
keys.add(KEY_TEXT_TO_SPEECH);
|
||||
keys.add(KEY_PHYSICAL_KEYBOARD);
|
||||
|
||||
return keys;
|
||||
}
|
||||
};
|
||||
|
@@ -23,6 +23,8 @@ import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PhoneLanguagePreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
|
||||
@@ -47,6 +49,13 @@ public class PhoneLanguagePreferenceController extends AbstractPreferenceControl
|
||||
preference.setSummary(localeNames);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateNonIndexableKeys(List<String> keys) {
|
||||
// No index needed, because this pref has the same name as the parent page. Indexing it will
|
||||
// make search page look like there are duplicate result, creating confusion.
|
||||
keys.add(getPreferenceKey());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPreferenceKey() {
|
||||
return KEY_PHONE_LANGUAGE;
|
||||
|
@@ -16,12 +16,16 @@
|
||||
|
||||
package com.android.settings.language;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.v7.preference.Preference;
|
||||
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
import com.android.settings.TestConfig;
|
||||
import com.android.settings.testutils.FakeFeatureFactory;
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
@@ -31,9 +35,8 @@ import org.mockito.Mock;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@RunWith(SettingsRobolectricTestRunner.class)
|
||||
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
|
||||
@@ -77,4 +80,11 @@ public class PhoneLanguagePreferenceControllerTest {
|
||||
|
||||
verify(mPreference).setSummary(testSummary);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateNonIndexable_shouldAddKey() {
|
||||
final List<String> niks = new ArrayList<>();
|
||||
mController.updateNonIndexableKeys(niks);
|
||||
assertThat(niks).containsExactly(mController.getPreferenceKey());
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user