Merge "Support disabled until used apps" into mnc-dev

This commit is contained in:
Jason Monk
2015-06-17 20:31:26 +00:00
committed by Android (Google) Code Review

View File

@@ -166,7 +166,7 @@ public class InstalledAppDetails extends AppInfoBase
|| Utils.isSystemPackage(mPm, mPackageInfo)) { || Utils.isSystemPackage(mPm, mPackageInfo)) {
// Disable button for core system applications. // Disable button for core system applications.
button.setText(R.string.disable_text); button.setText(R.string.disable_text);
} else if (mAppEntry.info.enabled) { } else if (mAppEntry.info.enabled && !isDisabledUntilUsed()) {
button.setText(R.string.disable_text); button.setText(R.string.disable_text);
disableable = true; disableable = true;
} else { } else {
@@ -177,6 +177,11 @@ public class InstalledAppDetails extends AppInfoBase
return disableable; return disableable;
} }
private boolean isDisabledUntilUsed() {
return mAppEntry.info.enabledSetting
== PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED;
}
private void initUninstallButtons() { private void initUninstallButtons() {
final boolean isBundled = (mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0; final boolean isBundled = (mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0;
boolean enabled = true; boolean enabled = true;
@@ -690,7 +695,7 @@ public class InstalledAppDetails extends AppInfoBase
String packageName = mAppEntry.info.packageName; String packageName = mAppEntry.info.packageName;
if(v == mUninstallButton) { if(v == mUninstallButton) {
if ((mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0) { if ((mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
if (mAppEntry.info.enabled) { if (mAppEntry.info.enabled && !isDisabledUntilUsed()) {
if (mUpdatedSysApp) { if (mUpdatedSysApp) {
showDialogInner(DLG_SPECIAL_DISABLE, 0); showDialogInner(DLG_SPECIAL_DISABLE, 0);
} else { } else {