Clean-up settings slices

- Set TTL to Infinity
- Set color of each slice to color accent

Change-Id: I7de4530880725ba3282602135bdc1fa85d786905
Fixes: 79780418
Test: robotests
This commit is contained in:
Matthew Fritze
2018-05-15 18:54:17 -07:00
parent b7b355a1c5
commit 7d565e97a3
2 changed files with 54 additions and 8 deletions

View File

@@ -24,11 +24,11 @@ import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_
import static com.android.settings.slices.SettingsSliceProvider.EXTRA_SLICE_KEY;
import static com.android.settings.slices.SettingsSliceProvider.EXTRA_SLICE_PLATFORM_DEFINED;
import android.annotation.ColorInt;
import android.app.PendingIntent;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.provider.Settings;
import android.provider.SettingsSlicesContract;
@@ -41,6 +41,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.SubSettings;
import com.android.settings.Utils;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.SliderPreferenceController;
import com.android.settings.core.TogglePreferenceController;
@@ -67,9 +68,6 @@ public class SliceBuilderUtils {
private static final String TAG = "SliceBuilder";
// A Slice should not be store for longer than 60,000 milliseconds / 1 minute.
public static final long SLICE_TTL_MILLIS = 60000;
/**
* Build a Slice from {@link SliceData}.
*
@@ -234,13 +232,15 @@ public class SliceBuilderUtils {
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
final CharSequence subtitleText = getSubtitleText(context, controller, sliceData);
@ColorInt final int color = Utils.getColorAccent(context);
final TogglePreferenceController toggleController =
(TogglePreferenceController) controller;
final SliceAction sliceAction = getToggleAction(context, sliceData,
toggleController.isChecked());
final List<String> keywords = buildSliceKeywords(sliceData);
return new ListBuilder(context, sliceData.getUri(), SLICE_TTL_MILLIS)
return new ListBuilder(context, sliceData.getUri(), ListBuilder.INFINITY)
.setAccentColor(color)
.addRow(rowBuilder -> rowBuilder
.setTitle(sliceData.getTitle())
.setSubtitle(subtitleText)
@@ -256,9 +256,11 @@ public class SliceBuilderUtils {
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
final CharSequence subtitleText = getSubtitleText(context, controller, sliceData);
@ColorInt final int color = Utils.getColorAccent(context);
final List<String> keywords = buildSliceKeywords(sliceData);
return new ListBuilder(context, sliceData.getUri(), SLICE_TTL_MILLIS)
return new ListBuilder(context, sliceData.getUri(), ListBuilder.INFINITY)
.setAccentColor(color)
.addRow(rowBuilder -> rowBuilder
.setTitle(sliceData.getTitle())
.setSubtitle(subtitleText)
@@ -274,11 +276,13 @@ public class SliceBuilderUtils {
final PendingIntent actionIntent = getSliderAction(context, sliceData);
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
@ColorInt final int color = Utils.getColorAccent(context);
final SliceAction primaryAction = new SliceAction(contentIntent, icon,
sliceData.getTitle());
final List<String> keywords = buildSliceKeywords(sliceData);
return new ListBuilder(context, sliceData.getUri(), SLICE_TTL_MILLIS)
return new ListBuilder(context, sliceData.getUri(), ListBuilder.INFINITY)
.setAccentColor(color)
.addInputRange(builder -> builder
.setTitle(sliceData.getTitle())
.setMax(sliderController.getMaxSteps())
@@ -346,6 +350,7 @@ public class SliceBuilderUtils {
BasePreferenceController controller) {
final String title = data.getTitle();
final List<String> keywords = buildSliceKeywords(data);
@ColorInt final int color = Utils.getColorAccent(context);
final String summary;
final SliceAction primaryAction;
final IconCompat icon = IconCompat.createWithResource(context, data.getIconResource());
@@ -371,7 +376,8 @@ public class SliceBuilderUtils {
primaryAction = new SliceAction(getSettingsIntent(context), icon, title);
}
return new ListBuilder(context, data.getUri(), SLICE_TTL_MILLIS)
return new ListBuilder(context, data.getUri(), ListBuilder.INFINITY)
.setAccentColor(color)
.addRow(builder -> builder
.setTitle(title)
.setSubtitle(summary)