summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/enterprise
diff options
context:
space:
mode:
authorjackqdyulei <jackqdyulei@google.com>2017-03-15 15:13:10 -0700
committerjackqdyulei <jackqdyulei@google.com>2017-03-28 17:05:19 -0700
commit82d07983b46b4c6a1b7a3c431c57ff45e84e72be (patch)
tree164844518b8c14a17e11c18bb06d984869af6117 /src/com/android/settings/enterprise
parentddba96670048a07b98e5c1e0d9f3d9bd4ebe9b38 (diff)
downloadpackages_apps_Settings-82d07983b46b4c6a1b7a3c431c57ff45e84e72be.tar.gz
packages_apps_Settings-82d07983b46b4c6a1b7a3c431c57ff45e84e72be.tar.bz2
packages_apps_Settings-82d07983b46b4c6a1b7a3c431c57ff45e84e72be.zip
Create Controller for app buttons
These two buttons(uninstall + forcestop) are used in both battery page and app page, we should move the logic for these two buttons into one place. This cl creates the AppButtonsPreferenceController for the above purpose. This cl only copies the logic to controller but hasn't make InstalledAppDetails use this controller. Since DialogFragment could not use function in controller directly, the controller expose DialogListener and all the fragments must implement this interface. Then they can delegate the method call to controller directly. The following cl will: 1. Make the InstalledAppDetails be compatible to controller 2. Make the InstalledAppDetails use this controller. Bug: 35810915 Test: RunSettingsRoboTests Change-Id: Ie2aa8064bcec3003233896c18be772825b12930a
Diffstat (limited to 'src/com/android/settings/enterprise')
-rw-r--r--src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java21
-rw-r--r--src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java15
2 files changed, 36 insertions, 0 deletions
diff --git a/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java b/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java
index e988fdadf1..a154a2fb93 100644
--- a/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java
+++ b/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java
@@ -129,4 +129,25 @@ public interface DevicePolicyManagerWrapper {
* @see android.app.admin.DevicePolicyManager#getOwnerInstalledCaCerts
*/
List<String> getOwnerInstalledCaCerts(@NonNull UserHandle user);
+
+ /**
+ * Calls {@code DevicePolicyManager.isDeviceOwnerAppOnAnyUser()}.
+ *
+ * @see android.app.admin.DevicePolicyManager#isDeviceOwnerAppOnAnyUser
+ */
+ boolean isDeviceOwnerAppOnAnyUser(String packageName);
+
+ /**
+ * Calls {@code DevicePolicyManager.packageHasActiveAdmins()}.
+ *
+ * @see android.app.admin.DevicePolicyManager#packageHasActiveAdmins
+ */
+ boolean packageHasActiveAdmins(String packageName);
+
+ /**
+ * Calls {@code DevicePolicyManager.isUninstallInQueue()}.
+ *
+ * @see android.app.admin.DevicePolicyManager#isUninstallInQueue
+ */
+ boolean isUninstallInQueue(String packageName);
}
diff --git a/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java b/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java
index 18563b587f..95a154bff5 100644
--- a/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java
+++ b/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java
@@ -101,4 +101,19 @@ public class DevicePolicyManagerWrapperImpl implements DevicePolicyManagerWrappe
public List<String> getOwnerInstalledCaCerts(@NonNull UserHandle user) {
return mDpm.getOwnerInstalledCaCerts(user);
}
+
+ @Override
+ public boolean isDeviceOwnerAppOnAnyUser(String packageName) {
+ return mDpm.isDeviceOwnerAppOnAnyUser(packageName);
+ }
+
+ @Override
+ public boolean packageHasActiveAdmins(String packageName) {
+ return mDpm.packageHasActiveAdmins(packageName);
+ }
+
+ @Override
+ public boolean isUninstallInQueue(String packageName) {
+ return mDpm.isUninstallInQueue(packageName);
+ }
}