Merge "Remove custom updateState() if it's just setting summary"
This commit is contained in:
committed by
Android (Google) Code Review
commit
f5b8aedcf5
@@ -55,7 +55,8 @@
|
||||
android:key="manage_perms"
|
||||
android:title="@string/app_permissions"
|
||||
android:order="12"
|
||||
settings:keywords="@string/keywords_app_permissions">
|
||||
settings:keywords="@string/keywords_app_permissions"
|
||||
settings:controller="com.android.settings.applications.AppPermissionsPreferenceController">
|
||||
<intent android:action="android.intent.action.MANAGE_PERMISSIONS" />
|
||||
</Preference>
|
||||
|
||||
@@ -76,4 +77,4 @@
|
||||
android:title="@string/special_access"
|
||||
android:order="20" />
|
||||
|
||||
</PreferenceScreen>
|
||||
</PreferenceScreen>
|
||||
|
@@ -49,7 +49,7 @@ public abstract class VibrationIntensityPreferenceController extends BasePrefere
|
||||
mSettingsContentObserver = new SettingObserver(settingKey) {
|
||||
@Override
|
||||
public void onChange(boolean selfChange, Uri uri) {
|
||||
updateState(null);
|
||||
updateState(mPreference);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -73,14 +73,6 @@ public abstract class VibrationIntensityPreferenceController extends BasePrefere
|
||||
mPreference = screen.findPreference(getPreferenceKey());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
if (mPreference == null) {
|
||||
return;
|
||||
}
|
||||
mPreference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
final int intensity = Settings.System.getInt(mContext.getContentResolver(),
|
||||
|
@@ -75,7 +75,6 @@ public class AppAndNotificationDashboardFragment extends DashboardFragment {
|
||||
controllers.add(new EmergencyBroadcastPreferenceController(context,
|
||||
"app_and_notif_cell_broadcast_settings"));
|
||||
controllers.add(new SpecialAppAccessPreferenceController(context));
|
||||
controllers.add(new AppPermissionsPreferenceController(context));
|
||||
controllers.add(new RecentAppsPreferenceController(context, app, host));
|
||||
return controllers;
|
||||
}
|
||||
|
@@ -19,55 +19,40 @@ import android.content.pm.PackageManager;
|
||||
import android.content.pm.PackageManager.NameNotFoundException;
|
||||
import android.content.pm.PermissionGroupInfo;
|
||||
import android.content.pm.PermissionInfo;
|
||||
import android.support.v7.preference.Preference;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArraySet;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public class AppPermissionsPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
public class AppPermissionsPreferenceController extends BasePreferenceController {
|
||||
|
||||
private static final String TAG = "AppPermissionPrefCtrl";
|
||||
private static final String KEY_APP_PERMISSION_GROUPS = "manage_perms";
|
||||
private static final String[] PERMISSION_GROUPS = new String[] {
|
||||
"android.permission-group.LOCATION",
|
||||
"android.permission-group.MICROPHONE",
|
||||
"android.permission-group.CAMERA",
|
||||
"android.permission-group.SMS",
|
||||
"android.permission-group.CONTACTS",
|
||||
"android.permission-group.PHONE"};
|
||||
"android.permission-group.LOCATION",
|
||||
"android.permission-group.MICROPHONE",
|
||||
"android.permission-group.CAMERA",
|
||||
"android.permission-group.SMS",
|
||||
"android.permission-group.CONTACTS",
|
||||
"android.permission-group.PHONE"};
|
||||
|
||||
private static final int NUM_PERMISSION_TO_USE = 3;
|
||||
|
||||
private final PackageManager mPackageManager;
|
||||
|
||||
public AppPermissionsPreferenceController(Context context) {
|
||||
super(context);
|
||||
super(context, KEY_APP_PERMISSION_GROUPS);
|
||||
mPackageManager = context.getPackageManager();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPreferenceKey() {
|
||||
return KEY_APP_PERMISSION_GROUPS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
final CharSequence summary = getSummary();
|
||||
if (summary != null) {
|
||||
preference.setSummary(summary);
|
||||
}
|
||||
public int getAvailabilityStatus() {
|
||||
return AVAILABLE;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -96,7 +81,7 @@ public class AppPermissionsPreferenceController extends AbstractPreferenceContro
|
||||
private Set<String> getGrantedPermissionGroups(Set<String> permissions) {
|
||||
ArraySet<String> grantedPermissionGroups = new ArraySet<>();
|
||||
List<PackageInfo> installedPackages =
|
||||
mPackageManager.getInstalledPackages(PackageManager.GET_PERMISSIONS);
|
||||
mPackageManager.getInstalledPackages(PackageManager.GET_PERMISSIONS);
|
||||
for (PackageInfo installedPackage : installedPackages) {
|
||||
if (installedPackage.permissions == null) {
|
||||
continue;
|
||||
@@ -134,12 +119,12 @@ public class AppPermissionsPreferenceController extends AbstractPreferenceContro
|
||||
for (String group : PERMISSION_GROUPS) {
|
||||
try {
|
||||
final List<PermissionInfo> permissions =
|
||||
mPackageManager.queryPermissionsByGroup(group, 0);
|
||||
mPackageManager.queryPermissionsByGroup(group, 0);
|
||||
for (PermissionInfo permissionInfo : permissions) {
|
||||
result.add(permissionInfo.name);
|
||||
}
|
||||
} catch (NameNotFoundException e) {
|
||||
Log.e(TAG, "Error getting permissions in group "+group, e);
|
||||
Log.e(TAG, "Error getting permissions in group " + group, e);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
@@ -49,11 +49,6 @@ public abstract class DefaultAppShortcutPreferenceControllerBase extends BasePre
|
||||
return hasAppCapability() ? AVAILABLE : DISABLED_UNSUPPORTED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
int summaryResId = isDefaultApp() ? R.string.yes : R.string.no;
|
||||
|
@@ -21,7 +21,6 @@ import static android.Manifest.permission.SYSTEM_ALERT_WINDOW;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.os.UserManager;
|
||||
import android.support.v7.preference.Preference;
|
||||
|
||||
import com.android.settings.SettingsPreferenceFragment;
|
||||
|
||||
@@ -50,11 +49,6 @@ public class DrawOverlayDetailPreferenceController extends AppInfoPreferenceCont
|
||||
return DISABLED_FOR_USER;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<? extends SettingsPreferenceFragment> getDetailFragmentClass() {
|
||||
return DrawOverlayDetails.class;
|
||||
|
@@ -21,7 +21,6 @@ import static android.Manifest.permission.WRITE_SETTINGS;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.os.UserManager;
|
||||
import android.support.v7.preference.Preference;
|
||||
|
||||
import com.android.settings.SettingsPreferenceFragment;
|
||||
|
||||
@@ -51,11 +50,6 @@ public class WriteSystemSettingsPreferenceController extends AppInfoPreferenceCo
|
||||
return DISABLED_FOR_USER;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<? extends SettingsPreferenceFragment> getDetailFragmentClass() {
|
||||
return WriteSettingsDetails.class;
|
||||
|
@@ -19,7 +19,6 @@ package com.android.settings.backup;
|
||||
import android.app.backup.BackupManager;
|
||||
import android.content.Context;
|
||||
import android.os.UserManager;
|
||||
import android.support.v7.preference.Preference;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
@@ -45,11 +44,6 @@ public class BackupSettingsActivityPreferenceController extends BasePreferenceCo
|
||||
: DISABLED_UNSUPPORTED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
final boolean backupEnabled = mBackupManager.isBackupEnabled();
|
||||
|
@@ -41,7 +41,7 @@ import java.util.TreeSet;
|
||||
*/
|
||||
public class PreferenceControllerListHelper {
|
||||
|
||||
private static final String TAG = "PrefCtrlListCreator";
|
||||
private static final String TAG = "PrefCtrlListHelper";
|
||||
|
||||
/**
|
||||
* Instantiates a list of controller based on xml definition.
|
||||
|
@@ -18,7 +18,6 @@ import android.os.IBinder;
|
||||
import android.os.Parcel;
|
||||
import android.os.RemoteException;
|
||||
import android.os.ServiceManager;
|
||||
import android.support.v7.preference.Preference;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
@@ -45,11 +44,6 @@ public class ColorModePreferenceController extends BasePreferenceController {
|
||||
return mConfigWrapper.isScreenWideColorGamut() ? AVAILABLE : DISABLED_FOR_USER;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
final int colorMode = getColorDisplayController().getColorMode();
|
||||
|
@@ -19,7 +19,6 @@ package com.android.settings.gestures;
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
import android.support.v7.preference.Preference;
|
||||
|
||||
import com.android.internal.hardware.AmbientDisplayConfiguration;
|
||||
import com.android.settings.R;
|
||||
@@ -55,11 +54,6 @@ public class GesturesSettingPreferenceController extends BasePreferenceControlle
|
||||
: DISABLED_UNSUPPORTED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
if (!mFeatureProvider.isSensorAvailable(mContext)) {
|
||||
|
@@ -51,6 +51,7 @@ public class HeaderPreferenceController extends NotificationPreferenceController
|
||||
return mAppRow != null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
if (mAppRow != null && mFragment != null) {
|
||||
LayoutPreference pref = (LayoutPreference) preference;
|
||||
|
@@ -84,10 +84,7 @@ public class PrintSettingPreferenceController extends BasePreferenceController i
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
if (preference == null) {
|
||||
return;
|
||||
}
|
||||
preference.setSummary(getSummary());
|
||||
super.updateState(preference);
|
||||
((RestrictedPreference) preference).checkRestrictionAndSetDisabled(
|
||||
UserManager.DISALLOW_PRINTING);
|
||||
}
|
||||
|
@@ -18,7 +18,6 @@ package com.android.settings.security;
|
||||
|
||||
import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
import android.support.v7.preference.Preference;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
@@ -44,10 +43,4 @@ public class ScreenPinningPreferenceController extends BasePreferenceController
|
||||
? mContext.getText(R.string.switch_on_text)
|
||||
: mContext.getText(R.string.switch_off_text);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
super.updateState(preference);
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
}
|
||||
|
@@ -82,11 +82,6 @@ public class SystemUpdatePreferenceController extends BasePreferenceController {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
preference.setSummary(getSummary());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
final Bundle updateInfo = mUpdateManager.retrieveSystemUpdateInfo();
|
||||
|
@@ -1 +1,2 @@
|
||||
com.android.settings.display.ScreenZoomPreferenceFragmentForSetupWizard
|
||||
com.android.settings.search.indexing.FakeSettingsFragment
|
||||
|
@@ -1,5 +1 @@
|
||||
com.android.settings.datausage.DataUsageSummaryLegacy
|
||||
com.android.settings.fuelgauge.PowerUsageSummary
|
||||
com.android.settings.fuelgauge.PowerUsageAdvanced
|
||||
com.android.settings.search.indexing.FakeSettingsFragment
|
||||
com.android.settings.system.SystemDashboardFragment
|
@@ -86,25 +86,25 @@ public class NotificationVibrationIntensityPreferenceControllerTest {
|
||||
public void updateState_shouldRefreshSummary() {
|
||||
Settings.System.putInt(mContext.getContentResolver(),
|
||||
NOTIFICATION_VIBRATION_INTENSITY, Vibrator.VIBRATION_INTENSITY_LOW);
|
||||
mController.updateState(null);
|
||||
mController.updateState(mPreference);
|
||||
assertThat(mPreference.getSummary())
|
||||
.isEqualTo(mContext.getString(R.string.accessibility_vibration_intensity_low));
|
||||
|
||||
Settings.System.putInt(mContext.getContentResolver(),
|
||||
NOTIFICATION_VIBRATION_INTENSITY, Vibrator.VIBRATION_INTENSITY_HIGH);
|
||||
mController.updateState(null);
|
||||
mController.updateState(mPreference);
|
||||
assertThat(mPreference.getSummary())
|
||||
.isEqualTo(mContext.getString(R.string.accessibility_vibration_intensity_high));
|
||||
|
||||
Settings.System.putInt(mContext.getContentResolver(),
|
||||
NOTIFICATION_VIBRATION_INTENSITY, Vibrator.VIBRATION_INTENSITY_MEDIUM);
|
||||
mController.updateState(null);
|
||||
mController.updateState(mPreference);
|
||||
assertThat(mPreference.getSummary())
|
||||
.isEqualTo(mContext.getString(R.string.accessibility_vibration_intensity_medium));
|
||||
|
||||
Settings.System.putInt(mContext.getContentResolver(),
|
||||
NOTIFICATION_VIBRATION_INTENSITY, Vibrator.VIBRATION_INTENSITY_OFF);
|
||||
mController.updateState(null);
|
||||
mController.updateState(mPreference);
|
||||
assertThat(mPreference.getSummary())
|
||||
.isEqualTo(mContext.getString(R.string.accessibility_vibration_intensity_off));
|
||||
}
|
||||
|
@@ -19,6 +19,8 @@ package com.android.settings.dashboard;
|
||||
import android.app.Fragment;
|
||||
import android.content.Context;
|
||||
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.core.PreferenceControllerListHelper;
|
||||
import com.android.settings.search.DatabaseIndexingUtils;
|
||||
import com.android.settings.search.Indexable;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
@@ -58,6 +60,14 @@ public class DashboardFragmentSearchIndexProviderInspector {
|
||||
try {
|
||||
controllersFromFragment =
|
||||
((DashboardFragment) fragment).createPreferenceControllers(context);
|
||||
List<BasePreferenceController> controllersFromXml = PreferenceControllerListHelper
|
||||
.getPreferenceControllersFromXml(context,
|
||||
((DashboardFragment) fragment).getPreferenceScreenResId());
|
||||
final List<BasePreferenceController> uniqueControllerFromXml =
|
||||
PreferenceControllerListHelper.filterControllers(
|
||||
controllersFromXml, controllersFromFragment);
|
||||
controllersFromFragment.addAll(uniqueControllerFromXml);
|
||||
|
||||
} catch (Throwable e) {
|
||||
// Can't do much with exception, assume the test passed.
|
||||
return true;
|
||||
|
Reference in New Issue
Block a user