Add keywords for wifi slice

Wifi slice didn't have a bunch of keywords for search, so users have to
type full matched text to search for wifi setting. We added keywords for
wifi slice to fix it, in which keywords are defined in strings.xml.

Fixes: 109922806
Test: rebuild
Change-Id: Ibe3b65c186cf6f43ae744c1f478d8985e270374c
This commit is contained in:
Mill Chen
2019-03-21 16:29:49 -07:00
parent e3cee29472
commit a77a05d5ae

View File

@@ -65,7 +65,10 @@ import com.android.settingslib.wifi.AccessPoint;
import com.android.settingslib.wifi.WifiTracker;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
* {@link CustomSliceable} for Wi-Fi, used by generic clients.
@@ -150,6 +153,7 @@ public class WifiSlice implements CustomSliceable {
return new ListBuilder(mContext, getUri(), ListBuilder.INFINITY)
.setAccentColor(COLOR_NOT_TINTED)
.setKeywords(getKeywords())
.addRow(new ListBuilder.RowBuilder()
.setTitle(title)
.setSubtitle(summary)
@@ -346,6 +350,14 @@ public class WifiSlice implements CustomSliceable {
intent, 0 /* flags */);
}
private Set<String> getKeywords() {
final String keywords = mContext.getString(R.string.keywords_wifi);
return Arrays.asList(TextUtils.split(keywords, ","))
.stream()
.map(String::trim)
.collect(Collectors.toSet());
}
@Override
public Class getBackgroundWorkerClass() {
return WifiScanWorker.class;