Support Slice type in SliceData

Add a getter for Slice type for BasePreferenceController.
This facilitates the generation of all possible Slices for Settings
search and discovery for AGSA.

Bug: 62807132
Test: robotests
Change-Id: I2cba1fc72c95769ecc26c76d1f2faa49a285d077
This commit is contained in:
Matthew Fritze
2018-02-27 16:35:40 -08:00
parent 3fc11a6db4
commit 1e9d9c7054
11 changed files with 180 additions and 66 deletions

View File

@@ -20,6 +20,7 @@ import android.util.Log;
import com.android.settings.search.ResultPayload;
import com.android.settings.search.SearchIndexableRaw;
import com.android.settings.slices.SliceData;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -153,6 +154,14 @@ public abstract class BasePreferenceController extends AbstractPreferenceControl
return getAvailabilityStatus() != DISABLED_UNSUPPORTED;
}
/**
* @return the UI type supported by the controller.
*/
@SliceData.SliceType
public int getSliceType() {
return SliceData.SliceType.INTENT;
}
/**
* Updates non-indexable keys for search provider.
*

View File

@@ -17,6 +17,7 @@ import android.content.Context;
import android.support.v7.preference.Preference;
import android.support.v7.preference.TwoStatePreference;
import com.android.settings.slices.SliceData;
import com.android.settings.widget.MasterSwitchPreference;
/**
@@ -59,4 +60,11 @@ public abstract class TogglePreferenceController extends BasePreferenceControlle
public final boolean onPreferenceChange(Preference preference, Object newValue) {
return setChecked((Boolean) newValue);
}
@Override
@SliceData.SliceType
public int getSliceType() {
return SliceData.SliceType.SWITCH;
}
}