Apply user restriction checks to app info screen in settings.

Bug: 14081992
Change-Id: Id90c00df600c19820dcbc391a09cc6a58e673d0e
This commit is contained in:
Julia Reynolds
2014-06-13 13:07:01 -04:00
parent 50bff6fb82
commit 30df56dc36

View File

@@ -126,6 +126,7 @@ public class InstalledAppDetails extends Fragment
private CheckBox mAskCompatibilityCB;
private CheckBox mEnableCompatibilityCB;
private boolean mCanClearData = true;
private boolean mAppControlRestricted = false;
private TextView mAppVersion;
private TextView mTotalSize;
private TextView mAppSize;
@@ -264,6 +265,10 @@ public class InstalledAppDetails extends Fragment
}
mClearDataButton.setOnClickListener(this);
}
if (mAppControlRestricted) {
mClearDataButton.setEnabled(false);
}
}
private CharSequence getMoveErrMsg(int errCode) {
@@ -303,7 +308,7 @@ public class InstalledAppDetails extends Fragment
mCanBeOnSdCardChecker.init();
moveDisable = !mCanBeOnSdCardChecker.check(mAppEntry.info);
}
if (moveDisable) {
if (moveDisable || mAppControlRestricted) {
mMoveAppButton.setEnabled(false);
} else {
mMoveAppButton.setOnClickListener(this);
@@ -388,6 +393,10 @@ public class InstalledAppDetails extends Fragment
}
}
if (mAppControlRestricted) {
enabled = false;
}
mUninstallButton.setEnabled(enabled);
if (enabled) {
// Register listener
@@ -580,6 +589,7 @@ public class InstalledAppDetails extends Fragment
public void onResume() {
super.onResume();
mAppControlRestricted = mUserManager.hasUserRestriction(UserManager.DISALLOW_APPS_CONTROL);
mSession.resume();
if (!refreshUi()) {
setIntentAndFinish(true, true);
@@ -1008,6 +1018,10 @@ public class InstalledAppDetails extends Fragment
mClearCacheButton.setOnClickListener(this);
}
}
if (mAppControlRestricted) {
mClearCacheButton.setEnabled(false);
mClearDataButton.setEnabled(false);
}
}
/*
@@ -1261,9 +1275,13 @@ public class InstalledAppDetails extends Fragment
};
private void updateForceStopButton(boolean enabled) {
if (mAppControlRestricted) {
mForceStopButton.setEnabled(false);
} else {
mForceStopButton.setEnabled(enabled);
mForceStopButton.setOnClickListener(InstalledAppDetails.this);
}
}
private void checkForceStop() {
if (mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {