Add dynamic summaries to Slices
Summary on slices will now determined by checking that summaries in the following order are valid: 1) SliceData summary 2) Preference Controller summary 3) SliceData screen title Valid is currently defined as: - Not empty / null - Not whitespace - Not sumamry placeholder Fixes: 71640678 Test: robotests Change-Id: I5e699e8566ece80742d311617b7dc4e9a9bda8cf
This commit is contained in:
@@ -71,7 +71,7 @@ public class SliceBroadcastReceiver extends BroadcastReceiver {
|
||||
throw new IllegalStateException("No key passed to Intent for toggle controller");
|
||||
}
|
||||
|
||||
BasePreferenceController controller = getBasePreferenceController(context, key);
|
||||
final BasePreferenceController controller = getPreferenceController(context, key);
|
||||
|
||||
if (!(controller instanceof TogglePreferenceController)) {
|
||||
throw new IllegalStateException("Toggle action passed for a non-toggle key: " + key);
|
||||
@@ -79,12 +79,12 @@ public class SliceBroadcastReceiver extends BroadcastReceiver {
|
||||
|
||||
// TODO post context.getContentResolver().notifyChanged(uri, null) in the Toggle controller
|
||||
// so that it's automatically broadcast to any slice.
|
||||
TogglePreferenceController toggleController = (TogglePreferenceController) controller;
|
||||
boolean currentValue = toggleController.isChecked();
|
||||
final TogglePreferenceController toggleController = (TogglePreferenceController) controller;
|
||||
final boolean currentValue = toggleController.isChecked();
|
||||
toggleController.setChecked(!currentValue);
|
||||
}
|
||||
|
||||
private BasePreferenceController getBasePreferenceController(Context context, String key) {
|
||||
private BasePreferenceController getPreferenceController(Context context, String key) {
|
||||
final SlicesDatabaseAccessor accessor = new SlicesDatabaseAccessor(context);
|
||||
final SliceData sliceData = accessor.getSliceDataFromKey(key);
|
||||
return SliceBuilderUtils.getPreferenceController(context, sliceData);
|
||||
|
Reference in New Issue
Block a user