Merge "Fix Apps storage page to show apps for selected user only" into main
diff --git a/src/com/android/settings/applications/AppStateClonedAppsBridge.java b/src/com/android/settings/applications/AppStateClonedAppsBridge.java
index 719023d1..de0251d 100644
--- a/src/com/android/settings/applications/AppStateClonedAppsBridge.java
+++ b/src/com/android/settings/applications/AppStateClonedAppsBridge.java
@@ -76,7 +76,8 @@
protected void updateExtraInfo(AppEntry app, String pkg, int uid) {
// Display package if allowlisted but not yet cloned.
// Or if the app is present in clone profile alongwith being in allowlist.
- if (mAllowedApps.contains(pkg) && ((!mCloneProfileApps.contains(pkg) || (app.isCloned)))) {
+ if (mAllowedApps.contains(pkg)
+ && ((!mCloneProfileApps.contains(pkg) || (app.isClonedProfile())))) {
app.extraInfo = Boolean.TRUE;
} else {
app.extraInfo = Boolean.FALSE;
diff --git a/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java b/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java
index 1d96688..cd3fd6b 100644
--- a/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java
+++ b/src/com/android/settings/applications/manageapplications/ApplicationViewHolder.java
@@ -231,7 +231,7 @@
void updateAppCloneWidget(Context context, View.OnClickListener onClickListener,
AppEntry entry) {
if (mAddIcon != null) {
- if (!entry.isCloned) {
+ if (!entry.isClonedProfile()) {
mAddIcon.setBackground(context.getDrawable(R.drawable.ic_add_24dp));
} else {
mAddIcon.setBackground(context.getDrawable(R.drawable.ic_trash_can));
@@ -254,7 +254,7 @@
String packageName = entry.info.packageName;
if (mWidgetContainer != null) {
- if (!entry.isCloned) {
+ if (!entry.isClonedProfile()) {
metricsFeatureProvider.action(context,
SettingsEnums.ACTION_CREATE_CLONE_APP);
mAddIcon.setVisibility(View.INVISIBLE);
@@ -285,7 +285,7 @@
}
}.execute();
- } else if (entry.isCloned) {
+ } else if (entry.isClonedProfile()) {
metricsFeatureProvider.action(context,
SettingsEnums.ACTION_DELETE_CLONE_APP);
cloneBackend.uninstallClonedApp(packageName, /*allUsers*/ false,
diff --git a/src/com/android/settings/applications/manageapplications/ManageApplications.java b/src/com/android/settings/applications/manageapplications/ManageApplications.java
index e370f3e..c2fabff 100644
--- a/src/com/android/settings/applications/manageapplications/ManageApplications.java
+++ b/src/com/android/settings/applications/manageapplications/ManageApplications.java
@@ -295,6 +295,7 @@
private String mVolumeUuid;
private int mStorageType;
private boolean mIsWorkOnly;
+ private boolean mIsPrivateProfileOnly;
private int mWorkUserId;
private boolean mIsPersonalOnly;
private View mEmptyView;
@@ -378,6 +379,8 @@
== ProfileSelectFragment.ProfileType.PERSONAL;
mIsWorkOnly = args != null && args.getInt(ProfileSelectFragment.EXTRA_PROFILE)
== ProfileSelectFragment.ProfileType.WORK;
+ mIsPrivateProfileOnly = args != null && args.getInt(ProfileSelectFragment.EXTRA_PROFILE)
+ == ProfileSelectFragment.ProfileType.PRIVATE;
mWorkUserId = args != null ? args.getInt(EXTRA_WORK_ID) : UserHandle.myUserId();
if (mIsWorkOnly && mWorkUserId == UserHandle.myUserId()) {
mWorkUserId = Utils.getManagedProfileId(mUserManager, UserHandle.myUserId());
@@ -660,6 +663,10 @@
if (mIsWorkOnly) {
compositeFilter = new CompoundFilter(compositeFilter, ApplicationsState.FILTER_WORK);
}
+ if (mIsPrivateProfileOnly) {
+ compositeFilter =
+ new CompoundFilter(compositeFilter, ApplicationsState.FILTER_PRIVATE_PROFILE);
+ }
if (mIsPersonalOnly) {
compositeFilter = new CompoundFilter(compositeFilter,
ApplicationsState.FILTER_PERSONAL);