Remove sub-text from slice builder
We would like to remove all sub-text from Settings Search. But slice view does not support API to configure the sub-text visibility. Therefore, the only way is to remove the sub-text from slices directly. Since Settings slices are also invoked by other apps, we can not directly remove the sub-text. Finally, we decide to check the caller's uid. If it comes from Settings Search, we will return the slice without the sub-text. Bug: 143118037 Test: visual, robotests Change-Id: Iac72f1683a2c930592634e0599058890d86f669d
This commit is contained in:
@@ -23,7 +23,6 @@ import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
@@ -455,37 +454,6 @@ public class SliceBuilderUtilsTest {
|
||||
assertThat(actualIconResource).isEqualTo(settingsIcon);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void buildUnavailableSlice_customizeSubtitle_returnsSliceWithCustomizedSubtitle() {
|
||||
final String subtitleOfUnavailableSlice = "subtitleOfUnavailableSlice";
|
||||
final SliceData data = getDummyData(FakeUnavailablePreferenceController.class,
|
||||
SUMMARY, SliceData.SliceType.SWITCH, SCREEN_TITLE, 0 /* icon */,
|
||||
subtitleOfUnavailableSlice);
|
||||
Settings.Global.putInt(mContext.getContentResolver(),
|
||||
FakeUnavailablePreferenceController.AVAILABILITY_KEY,
|
||||
BasePreferenceController.DISABLED_DEPENDENT_SETTING);
|
||||
|
||||
final Slice slice = SliceBuilderUtils.buildSlice(mContext, data);
|
||||
|
||||
final SliceMetadata metadata = SliceMetadata.from(mContext, slice);
|
||||
assertThat(metadata.getSubtitle()).isEqualTo(subtitleOfUnavailableSlice);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void buildUnavailableSlice_notCustomizeSubtitle_returnsSliceWithDefaultSubtitle() {
|
||||
final SliceData data = getDummyData(FakeUnavailablePreferenceController.class,
|
||||
SliceData.SliceType.SWITCH);
|
||||
Settings.Global.putInt(mContext.getContentResolver(),
|
||||
FakeUnavailablePreferenceController.AVAILABILITY_KEY,
|
||||
BasePreferenceController.DISABLED_DEPENDENT_SETTING);
|
||||
|
||||
final Slice slice = SliceBuilderUtils.buildSlice(mContext, data);
|
||||
|
||||
final SliceMetadata metadata = SliceMetadata.from(mContext, slice);
|
||||
assertThat(metadata.getSubtitle()).isEqualTo(
|
||||
mContext.getString(R.string.disabled_dependent_setting_summary));
|
||||
}
|
||||
|
||||
private SliceData getDummyData() {
|
||||
return getDummyData(TOGGLE_CONTROLLER, SUMMARY, SliceData.SliceType.SWITCH, SCREEN_TITLE,
|
||||
ICON, null /* unavailableSliceSubtitle */);
|
||||
|
Reference in New Issue
Block a user