summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/compat
diff options
context:
space:
mode:
authorJon Miranda <jonmiranda@google.com>2019-09-17 12:00:03 -0700
committerandroid-build-merger <android-build-merger@google.com>2019-09-17 12:00:03 -0700
commitbf7371e510c4d2419a65869fc4971804ea296981 (patch)
tree7e0afb03932290d775ba794d3188d72d07373d1a /src/com/android/launcher3/compat
parent315732e524ca49a3a969a238e299ee853cc16cd2 (diff)
parentc1322b6ac8677582355e700180ab554225f63952 (diff)
downloadandroid_packages_apps_Trebuchet-bf7371e510c4d2419a65869fc4971804ea296981.tar.gz
android_packages_apps_Trebuchet-bf7371e510c4d2419a65869fc4971804ea296981.tar.bz2
android_packages_apps_Trebuchet-bf7371e510c4d2419a65869fc4971804ea296981.zip
Key by both package and user for list of active install sessions.
am: c1322b6ac8 Change-Id: I112298649de8f9abd0898fdf4feda02395b7a31c
Diffstat (limited to 'src/com/android/launcher3/compat')
-rw-r--r--src/com/android/launcher3/compat/PackageInstallerCompat.java14
-rw-r--r--src/com/android/launcher3/compat/PackageInstallerCompatVL.java7
2 files changed, 12 insertions, 9 deletions
diff --git a/src/com/android/launcher3/compat/PackageInstallerCompat.java b/src/com/android/launcher3/compat/PackageInstallerCompat.java
index 11cb1f88d..55df98b48 100644
--- a/src/com/android/launcher3/compat/PackageInstallerCompat.java
+++ b/src/com/android/launcher3/compat/PackageInstallerCompat.java
@@ -19,6 +19,7 @@ package com.android.launcher3.compat;
import android.content.ComponentName;
import android.content.Context;
import android.content.pm.PackageInstaller;
+import android.content.pm.PackageInstaller.SessionInfo;
import android.os.Process;
import android.os.UserHandle;
@@ -29,6 +30,7 @@ import java.util.List;
import androidx.annotation.NonNull;
import com.android.launcher3.Utilities;
+import com.android.launcher3.util.PackageUserKey;
public abstract class PackageInstallerCompat {
@@ -52,19 +54,19 @@ public abstract class PackageInstallerCompat {
}
}
- public static UserHandle getUserHandle(PackageInstaller.SessionInfo info) {
+ public static UserHandle getUserHandle(SessionInfo info) {
return Utilities.ATLEAST_Q ? info.getUser() : Process.myUserHandle();
}
/**
* @return a map of active installs to their progress
*/
- public abstract HashMap<String, PackageInstaller.SessionInfo> updateAndGetActiveSessionCache();
+ public abstract HashMap<PackageUserKey, SessionInfo> updateAndGetActiveSessionCache();
/**
* @return an active SessionInfo for {@param pkg} or null if none exists.
*/
- public abstract PackageInstaller.SessionInfo getActiveSessionInfo(UserHandle user, String pkg);
+ public abstract SessionInfo getActiveSessionInfo(UserHandle user, String pkg);
public abstract void onStop();
@@ -75,7 +77,7 @@ public abstract class PackageInstallerCompat {
public final int progress;
public final UserHandle user;
- private PackageInstallInfo(@NonNull PackageInstaller.SessionInfo info) {
+ private PackageInstallInfo(@NonNull SessionInfo info) {
this.state = STATUS_INSTALLING;
this.packageName = info.getAppPackageName();
this.componentName = new ComponentName(packageName, "");
@@ -91,7 +93,7 @@ public abstract class PackageInstallerCompat {
this.user = user;
}
- public static PackageInstallInfo fromInstallingState(PackageInstaller.SessionInfo info) {
+ public static PackageInstallInfo fromInstallingState(SessionInfo info) {
return new PackageInstallInfo(info);
}
@@ -101,7 +103,7 @@ public abstract class PackageInstallerCompat {
}
- public abstract List<PackageInstaller.SessionInfo> getAllVerifiedSessions();
+ public abstract List<SessionInfo> getAllVerifiedSessions();
/**
* Returns true if a promise icon was already added to the home screen for {@param sessionId}.
diff --git a/src/com/android/launcher3/compat/PackageInstallerCompatVL.java b/src/com/android/launcher3/compat/PackageInstallerCompatVL.java
index 2e22cbafb..9c57e8ab5 100644
--- a/src/com/android/launcher3/compat/PackageInstallerCompatVL.java
+++ b/src/com/android/launcher3/compat/PackageInstallerCompatVL.java
@@ -89,12 +89,13 @@ public class PackageInstallerCompatVL extends PackageInstallerCompat {
}
@Override
- public HashMap<String, SessionInfo> updateAndGetActiveSessionCache() {
- HashMap<String, SessionInfo> activePackages = new HashMap<>();
+ public HashMap<PackageUserKey, SessionInfo> updateAndGetActiveSessionCache() {
+ HashMap<PackageUserKey, SessionInfo> activePackages = new HashMap<>();
for (SessionInfo info : getAllVerifiedSessions()) {
addSessionInfoToCache(info, getUserHandle(info));
if (info.getAppPackageName() != null) {
- activePackages.put(info.getAppPackageName(), info);
+ activePackages.put(new PackageUserKey(info.getAppPackageName(),
+ getUserHandle(info)), info);
mActiveSessions.put(info.getSessionId(),
new PackageUserKey(info.getAppPackageName(), getUserHandle(info)));
}