Merge "Add keywords to Slices" into pi-dev am: 2f911e2e9e

am: 21521826d9

Change-Id: I38d9efabcdecf3c40f1af28ecd167e58c2586ca7
This commit is contained in:
Matthew Fritze
2018-04-20 20:27:02 -07:00
committed by android-build-merger
17 changed files with 130 additions and 18 deletions

View File

@@ -47,6 +47,10 @@ import com.android.settingslib.core.AbstractPreferenceController;
import androidx.core.graphics.drawable.IconCompat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import androidx.slice.Slice;
import androidx.slice.builders.ListBuilder;
import androidx.slice.builders.SliceAction;
@@ -231,6 +235,7 @@ public class SliceBuilderUtils {
(TogglePreferenceController) controller;
final SliceAction sliceAction = getToggleAction(context, sliceData,
toggleController.isChecked());
final List<String> keywords = buildSliceKeywords(sliceData.getKeywords());
return new ListBuilder(context, sliceData.getUri(), SLICE_TTL_MILLIS)
.addRow(rowBuilder -> rowBuilder
@@ -239,6 +244,7 @@ public class SliceBuilderUtils {
.setPrimaryAction(
new SliceAction(contentIntent, icon, sliceData.getTitle()))
.addEndItem(sliceAction))
.setKeywords(keywords)
.build();
}
@@ -247,6 +253,7 @@ public class SliceBuilderUtils {
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
final CharSequence subtitleText = getSubtitleText(context, controller, sliceData);
final List<String> keywords = buildSliceKeywords(sliceData.getKeywords());
return new ListBuilder(context, sliceData.getUri(), SLICE_TTL_MILLIS)
.addRow(rowBuilder -> rowBuilder
@@ -254,6 +261,7 @@ public class SliceBuilderUtils {
.setSubtitle(subtitleText)
.setPrimaryAction(
new SliceAction(contentIntent, icon, sliceData.getTitle())))
.setKeywords(keywords)
.build();
}
@@ -265,6 +273,7 @@ public class SliceBuilderUtils {
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
final SliceAction primaryAction = new SliceAction(contentIntent, icon,
sliceData.getTitle());
final List<String> keywords = buildSliceKeywords(sliceData.getKeywords());
return new ListBuilder(context, sliceData.getUri(), SLICE_TTL_MILLIS)
.addInputRange(builder -> builder
@@ -273,6 +282,7 @@ public class SliceBuilderUtils {
.setValue(sliderController.getSliderPosition())
.setInputAction(actionIntent)
.setPrimaryAction(primaryAction))
.setKeywords(keywords)
.build();
}
@@ -311,9 +321,19 @@ public class SliceBuilderUtils {
|| TextUtils.equals(summary, doublePlaceHolder));
}
private static List<String> buildSliceKeywords(String keywordString) {
if (keywordString == null) {
return new ArrayList<>();
}
final String[] keywords = keywordString.split(",");
return Arrays.asList(keywords);
}
private static Slice buildUnavailableSlice(Context context, SliceData data,
BasePreferenceController controller) {
final String title = data.getTitle();
final List<String> keywords = buildSliceKeywords(data.getKeywords());
final String summary;
final SliceAction primaryAction;
final IconCompat icon = IconCompat.createWithResource(context, data.getIconResource());
@@ -344,6 +364,7 @@ public class SliceBuilderUtils {
.setTitle(title)
.setSubtitle(summary)
.setPrimaryAction(primaryAction))
.setKeywords(keywords)
.build();
}
}