Add location to security settings.
Bug: 32437756 Test: RunSettingsRoboTests Change-Id: I999669963801684eb2399f5e642159970727b3c4
This commit is contained in:
@@ -16,10 +16,15 @@
|
||||
|
||||
package com.android.settings.dashboard;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.preference.Preference;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settingslib.drawer.CategoryManager;
|
||||
import com.android.settingslib.drawer.DashboardCategory;
|
||||
import com.android.settingslib.drawer.Tile;
|
||||
@@ -73,6 +78,40 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindPreferenceToTile(Activity activity, Preference pref, Tile tile, String key) {
|
||||
pref.setTitle(tile.title);
|
||||
if (!TextUtils.isEmpty(key)) {
|
||||
pref.setKey(key);
|
||||
} else {
|
||||
pref.setKey(getDashboardKeyForTile(tile));
|
||||
}
|
||||
pref.setSummary(tile.summary);
|
||||
if (tile.icon != null) {
|
||||
pref.setIcon(tile.icon.loadDrawable(activity));
|
||||
}
|
||||
final Bundle metadata = tile.metaData;
|
||||
String clsName = null;
|
||||
if (metadata != null) {
|
||||
clsName = metadata.getString(SettingsActivity.META_DATA_KEY_FRAGMENT_CLASS);
|
||||
}
|
||||
if (!TextUtils.isEmpty(clsName)) {
|
||||
pref.setFragment(clsName);
|
||||
} else if (tile.intent != null) {
|
||||
final Intent intent = new Intent(tile.intent);
|
||||
pref.setOnPreferenceClickListener(preference -> {
|
||||
activity.startActivityForResult(intent, 0);
|
||||
return true;
|
||||
});
|
||||
}
|
||||
// Use negated priority for order, because tile priority is based on intent-filter
|
||||
// (larger value has higher priority). However pref order defines smaller value has
|
||||
// higher priority.
|
||||
if (tile.priority != 0) {
|
||||
pref.setOrder(-tile.priority);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProgressiveDisclosureMixin getProgressiveDisclosureMixin(Context context,
|
||||
DashboardFragment fragment) {
|
||||
|
Reference in New Issue
Block a user