diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-12-15 15:53:17 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2016-12-15 22:06:10 -0800 |
commit | 7c74e4ae641e76f73d74348e293c244a157f6585 (patch) | |
tree | 52f84297787842137b3bd1818bc0d5f723d1e3ab /src/com | |
parent | 338dee9dd7a7b087bf182f16970c16ffd940b435 (diff) | |
download | android_packages_apps_Trebuchet-7c74e4ae641e76f73d74348e293c244a157f6585.tar.gz android_packages_apps_Trebuchet-7c74e4ae641e76f73d74348e293c244a157f6585.tar.bz2 android_packages_apps_Trebuchet-7c74e4ae641e76f73d74348e293c244a157f6585.zip |
No more UserHandleCompat
Bug: 32745285
Change-Id: I762fb4e268c1afe48a1860ab12a4ccb3f626aa95
Diffstat (limited to 'src/com')
56 files changed, 360 insertions, 490 deletions
diff --git a/src/com/android/launcher3/AllAppsList.java b/src/com/android/launcher3/AllAppsList.java index bbc865036..34a44fc05 100644 --- a/src/com/android/launcher3/AllAppsList.java +++ b/src/com/android/launcher3/AllAppsList.java @@ -18,10 +18,10 @@ package com.android.launcher3; import android.content.ComponentName; import android.content.Context; +import android.os.UserHandle; import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.FlagOp; import com.android.launcher3.util.ItemInfoMatcher; @@ -95,7 +95,7 @@ public class AllAppsList { /** * Add the icons for the supplied apk called packageName. */ - public void addPackage(Context context, String packageName, UserHandleCompat user) { + public void addPackage(Context context, String packageName, UserHandle user) { final LauncherAppsCompat launcherApps = LauncherAppsCompat.getInstance(context); final List<LauncherActivityInfoCompat> matches = launcherApps.getActivityList(packageName, user); @@ -108,7 +108,7 @@ public class AllAppsList { /** * Remove the apps for the given apk identified by packageName. */ - public void removePackage(String packageName, UserHandleCompat user) { + public void removePackage(String packageName, UserHandle user) { final List<AppInfo> data = this.data; for (int i = data.size() - 1; i >= 0; i--) { AppInfo info = data.get(i); @@ -133,7 +133,7 @@ public class AllAppsList { } } - public void updateIconsAndLabels(HashSet<String> packages, UserHandleCompat user, + public void updateIconsAndLabels(HashSet<String> packages, UserHandle user, ArrayList<AppInfo> outUpdates) { for (AppInfo info : data) { if (info.user.equals(user) && packages.contains(info.componentName.getPackageName())) { @@ -146,7 +146,7 @@ public class AllAppsList { /** * Add and remove icons for this package which has been updated. */ - public void updatePackage(Context context, String packageName, UserHandleCompat user) { + public void updatePackage(Context context, String packageName, UserHandle user) { final LauncherAppsCompat launcherApps = LauncherAppsCompat.getInstance(context); final List<LauncherActivityInfoCompat> matches = launcherApps.getActivityList(packageName, user); @@ -210,7 +210,7 @@ public class AllAppsList { * MAIN/LAUNCHER activities in the supplied package. */ static boolean packageHasActivities(Context context, String packageName, - UserHandleCompat user) { + UserHandle user) { final LauncherAppsCompat launcherApps = LauncherAppsCompat.getInstance(context); return launcherApps.getActivityList(packageName, user).size() > 0; } @@ -219,7 +219,7 @@ public class AllAppsList { * Returns whether <em>apps</em> contains <em>component</em>. */ private static boolean findActivity(ArrayList<AppInfo> apps, ComponentName component, - UserHandleCompat user) { + UserHandle user) { final int N = apps.size(); for (int i = 0; i < N; i++) { final AppInfo info = apps.get(i); @@ -233,7 +233,7 @@ public class AllAppsList { /** * Find an ApplicationInfo object for the given packageName and className. */ - private AppInfo findApplicationInfoLocked(String packageName, UserHandleCompat user, + private AppInfo findApplicationInfoLocked(String packageName, UserHandle user, String className) { for (AppInfo info: data) { if (user.equals(info.user) && packageName.equals(info.componentName.getPackageName()) diff --git a/src/com/android/launcher3/AppInfo.java b/src/com/android/launcher3/AppInfo.java index 23e288242..f7c51847e 100644 --- a/src/com/android/launcher3/AppInfo.java +++ b/src/com/android/launcher3/AppInfo.java @@ -20,10 +20,10 @@ import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; +import android.os.UserHandle; import android.util.Log; import com.android.launcher3.compat.LauncherActivityInfoCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.PackageManagerHelper; @@ -73,18 +73,18 @@ public class AppInfo extends ItemInfo { /** * Must not hold the Context. */ - public AppInfo(Context context, LauncherActivityInfoCompat info, UserHandleCompat user, + public AppInfo(Context context, LauncherActivityInfoCompat info, UserHandle user, IconCache iconCache) { this(context, info, user, iconCache, UserManagerCompat.getInstance(context).isQuietModeEnabled(user)); } - public AppInfo(Context context, LauncherActivityInfoCompat info, UserHandleCompat user, + public AppInfo(Context context, LauncherActivityInfoCompat info, UserHandle user, IconCache iconCache, boolean quietModeEnabled) { this(context, info, user, iconCache, quietModeEnabled, true /* useLowResIcon */); } - public AppInfo(Context context, LauncherActivityInfoCompat info, UserHandleCompat user, + public AppInfo(Context context, LauncherActivityInfoCompat info, UserHandle user, IconCache iconCache, boolean quietModeEnabled, boolean useLowResIcon) { this.componentName = info.getComponentName(); this.container = ItemInfo.NO_ID; @@ -134,7 +134,7 @@ public class AppInfo extends ItemInfo { } public static Intent makeLaunchIntent(Context context, LauncherActivityInfoCompat info, - UserHandleCompat user) { + UserHandle user) { long serialNumber = UserManagerCompat.getInstance(context).getSerialNumberForUser(user); return new Intent(Intent.ACTION_MAIN) .addCategory(Intent.CATEGORY_LAUNCHER) diff --git a/src/com/android/launcher3/FolderInfo.java b/src/com/android/launcher3/FolderInfo.java index c24423589..4c88e7eea 100644 --- a/src/com/android/launcher3/FolderInfo.java +++ b/src/com/android/launcher3/FolderInfo.java @@ -17,8 +17,8 @@ package com.android.launcher3; import android.content.Context; +import android.os.Process; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ContentWriter; import java.util.ArrayList; @@ -56,7 +56,7 @@ public class FolderInfo extends ItemInfo { public FolderInfo() { itemType = LauncherSettings.Favorites.ITEM_TYPE_FOLDER; - user = UserHandleCompat.myUserHandle(); + user = Process.myUserHandle(); } /** diff --git a/src/com/android/launcher3/IconCache.java b/src/com/android/launcher3/IconCache.java index 9f332a450..3557447f5 100644 --- a/src/com/android/launcher3/IconCache.java +++ b/src/com/android/launcher3/IconCache.java @@ -38,13 +38,14 @@ import android.graphics.Paint; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.os.Handler; +import android.os.Process; import android.os.SystemClock; +import android.os.UserHandle; import android.text.TextUtils; import android.util.Log; import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.graphics.LauncherIcons; @@ -86,7 +87,7 @@ public class IconCache { public boolean isLowResIcon; } - private final HashMap<UserHandleCompat, Bitmap> mDefaultIcons = new HashMap<>(); + private final HashMap<UserHandle, Bitmap> mDefaultIcons = new HashMap<>(); @Thunk final MainThreadExecutor mMainThreadExecutor = new MainThreadExecutor(); private final Context mContext; @@ -185,7 +186,7 @@ public class IconCache { return getFullResDefaultActivityIcon(); } - private Bitmap makeDefaultIcon(UserHandleCompat user) { + private Bitmap makeDefaultIcon(UserHandle user) { Drawable unbadged = getFullResDefaultActivityIcon(); return LauncherIcons.createBadgedIconBitmap(unbadged, user, mContext); } @@ -193,14 +194,14 @@ public class IconCache { /** * Remove any records for the supplied ComponentName. */ - public synchronized void remove(ComponentName componentName, UserHandleCompat user) { + public synchronized void remove(ComponentName componentName, UserHandle user) { mCache.remove(new ComponentKey(componentName, user)); } /** * Remove any records for the supplied package name from memory. */ - private void removeFromMemCacheLocked(String packageName, UserHandleCompat user) { + private void removeFromMemCacheLocked(String packageName, UserHandle user) { HashSet<ComponentKey> forDeletion = new HashSet<ComponentKey>(); for (ComponentKey key: mCache.keySet()) { if (key.componentName.getPackageName().equals(packageName) @@ -216,7 +217,7 @@ public class IconCache { /** * Updates the entries related to the given package in memory and persistent DB. */ - public synchronized void updateIconsForPkg(String packageName, UserHandleCompat user) { + public synchronized void updateIconsForPkg(String packageName, UserHandle user) { removeIconsForPkg(packageName, user); try { PackageInfo info = mPackageManager.getPackageInfo(packageName, @@ -234,7 +235,7 @@ public class IconCache { /** * Removes the entries related to the given package in memory and persistent DB. */ - public synchronized void removeIconsForPkg(String packageName, UserHandleCompat user) { + public synchronized void removeIconsForPkg(String packageName, UserHandle user) { removeFromMemCacheLocked(packageName, user); long userSerial = mUserManager.getSerialNumberForUser(user); mIconDb.delete( @@ -247,7 +248,7 @@ public class IconCache { mWorkerHandler.removeCallbacksAndMessages(ICON_UPDATE_TOKEN); mIconProvider.updateSystemStateString(); - for (UserHandleCompat user : mUserManager.getUserProfiles()) { + for (UserHandle user : mUserManager.getUserProfiles()) { // Query for the set of apps final List<LauncherActivityInfoCompat> apps = mLauncherApps.getActivityList(null, user); // Fail if we don't have any apps @@ -258,7 +259,7 @@ public class IconCache { // Update icon cache. This happens in segments and {@link #onPackageIconsUpdated} // is called by the icon cache when the job is complete. - updateDBIcons(user, apps, UserHandleCompat.myUserHandle().equals(user) + updateDBIcons(user, apps, Process.myUserHandle().equals(user) ? ignorePackagesForMainUser : Collections.<String>emptySet()); } } @@ -268,7 +269,7 @@ public class IconCache { * the DB and are updated. * @return The set of packages for which icons have updated. */ - private void updateDBIcons(UserHandleCompat user, List<LauncherActivityInfoCompat> apps, + private void updateDBIcons(UserHandle user, List<LauncherActivityInfoCompat> apps, Set<String> ignorePackages) { long userSerial = mUserManager.getSerialNumberForUser(user); PackageManager pm = mContext.getPackageManager(); @@ -432,7 +433,7 @@ public class IconCache { return new IconLoadRequest(request, mWorkerHandler); } - private Bitmap getNonNullIcon(CacheEntry entry, UserHandleCompat user) { + private Bitmap getNonNullIcon(CacheEntry entry, UserHandle user) { return entry.icon == null ? getDefaultIcon(user) : entry.icon; } @@ -441,7 +442,7 @@ public class IconCache { */ public synchronized void getTitleAndIcon(AppInfo application, LauncherActivityInfoCompat info, boolean useLowResIcon) { - UserHandleCompat user = info == null ? application.user : info.getUser(); + UserHandle user = info == null ? application.user : info.getUser(); CacheEntry entry = cacheLocked(application.componentName, info, user, false, useLowResIcon); application.title = Utilities.trim(entry.title); @@ -467,7 +468,7 @@ public class IconCache { /** * Returns a high res icon for the given intent and user */ - public synchronized Bitmap getIcon(Intent intent, UserHandleCompat user) { + public synchronized Bitmap getIcon(Intent intent, UserHandle user) { ComponentName component = intent.getComponent(); // null info means not installed, but if we have a component from the intent then // we should still look in the cache for restored app icons. @@ -485,7 +486,7 @@ public class IconCache { * corresponding activity is not found, it reverts to the package icon. */ public synchronized void getTitleAndIcon(ShortcutInfo shortcutInfo, Intent intent, - UserHandleCompat user, boolean useLowResIcon) { + UserHandle user, boolean useLowResIcon) { ComponentName component = intent.getComponent(); // null info means not installed, but if we have a component from the intent then // we should still look in the cache for restored app icons. @@ -505,7 +506,7 @@ public class IconCache { */ public synchronized void getTitleAndIcon( ShortcutInfo shortcutInfo, ComponentName component, LauncherActivityInfoCompat info, - UserHandleCompat user, boolean usePkgIcon, boolean useLowResIcon) { + UserHandle user, boolean usePkgIcon, boolean useLowResIcon) { CacheEntry entry = cacheLocked(component, info, user, usePkgIcon, useLowResIcon); shortcutInfo.iconBitmap = getNonNullIcon(entry, user); shortcutInfo.title = Utilities.trim(entry.title); @@ -526,14 +527,14 @@ public class IconCache { infoInOut.usingLowResIcon = entry.isLowResIcon; } - public synchronized Bitmap getDefaultIcon(UserHandleCompat user) { + public synchronized Bitmap getDefaultIcon(UserHandle user) { if (!mDefaultIcons.containsKey(user)) { mDefaultIcons.put(user, makeDefaultIcon(user)); } return mDefaultIcons.get(user); } - public boolean isDefaultIcon(Bitmap icon, UserHandleCompat user) { + public boolean isDefaultIcon(Bitmap icon, UserHandle user) { return mDefaultIcons.get(user) == icon; } @@ -542,7 +543,7 @@ public class IconCache { * This method is not thread safe, it must be called from a synchronized method. */ protected CacheEntry cacheLocked(ComponentName componentName, LauncherActivityInfoCompat info, - UserHandleCompat user, boolean usePackageIcon, boolean useLowResIcon) { + UserHandle user, boolean usePackageIcon, boolean useLowResIcon) { ComponentKey cacheKey = new ComponentKey(componentName, user); CacheEntry entry = mCache.get(cacheKey); if (entry == null || (entry.isLowResIcon && !useLowResIcon)) { @@ -587,7 +588,7 @@ public class IconCache { * Adds a default package entry in the cache. This entry is not persisted and will be removed * when the cache is flushed. */ - public synchronized void cachePackageInstallInfo(String packageName, UserHandleCompat user, + public synchronized void cachePackageInstallInfo(String packageName, UserHandle user, Bitmap icon, CharSequence title) { removeFromMemCacheLocked(packageName, user); @@ -607,7 +608,7 @@ public class IconCache { } } - private static ComponentKey getPackageKey(String packageName, UserHandleCompat user) { + private static ComponentKey getPackageKey(String packageName, UserHandle user) { ComponentName cn = new ComponentName(packageName, packageName + EMPTY_CLASS_NAME); return new ComponentKey(cn, user); } @@ -616,7 +617,7 @@ public class IconCache { * Gets an entry for the package, which can be used as a fallback entry for various components. * This method is not thread safe, it must be called from a synchronized method. */ - private CacheEntry getEntryForPackageLocked(String packageName, UserHandleCompat user, + private CacheEntry getEntryForPackageLocked(String packageName, UserHandle user, boolean useLowResIcon) { ComponentKey cacheKey = getPackageKey(packageName, user); CacheEntry entry = mCache.get(cacheKey); @@ -628,7 +629,7 @@ public class IconCache { // Check the DB first. if (!getEntryFromDB(cacheKey, entry, useLowResIcon)) { try { - int flags = UserHandleCompat.myUserHandle().equals(user) ? 0 : + int flags = Process.myUserHandle().equals(user) ? 0 : PackageManager.GET_UNINSTALLED_PACKAGES; PackageInfo info = mPackageManager.getPackageInfo(packageName, flags); ApplicationInfo appInfo = info.applicationInfo; diff --git a/src/com/android/launcher3/InstallShortcutReceiver.java b/src/com/android/launcher3/InstallShortcutReceiver.java index 2f92201e1..df2deb8ca 100644 --- a/src/com/android/launcher3/InstallShortcutReceiver.java +++ b/src/com/android/launcher3/InstallShortcutReceiver.java @@ -26,13 +26,14 @@ import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; +import android.os.Process; +import android.os.UserHandle; import android.text.TextUtils; import android.util.Base64; import android.util.Log; import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.shortcuts.DeepShortcutManager; import com.android.launcher3.shortcuts.ShortcutInfoCompat; @@ -94,7 +95,7 @@ public class InstallShortcutReceiver extends BroadcastReceiver { } public static void removeFromInstallQueue(Context context, HashSet<String> packageNames, - UserHandleCompat user) { + UserHandle user) { if (packageNames.isEmpty()) { return; } @@ -192,7 +193,7 @@ public class InstallShortcutReceiver extends BroadcastReceiver { } PendingInstallShortcutInfo info = new PendingInstallShortcutInfo( - data, UserHandleCompat.myUserHandle(), context); + data, Process.myUserHandle(), context); if (info.launchIntent == null || info.label == null) { if (DBG) Log.e(TAG, "Invalid install shortcut intent"); return null; @@ -289,12 +290,12 @@ public class InstallShortcutReceiver extends BroadcastReceiver { final Context mContext; final Intent launchIntent; final String label; - final UserHandleCompat user; + final UserHandle user; /** * Initializes a PendingInstallShortcutInfo received from a different app. */ - public PendingInstallShortcutInfo(Intent data, UserHandleCompat user, Context context) { + public PendingInstallShortcutInfo(Intent data, UserHandle user, Context context) { activityInfo = null; shortcutInfo = null; providerInfo = null; @@ -351,7 +352,7 @@ public class InstallShortcutReceiver extends BroadcastReceiver { data = null; mContext = context; - user = UserHandleCompat.fromUser(info.getProfile()); + user = info.getProfile(); launchIntent = new Intent().setComponent(info.provider) .putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId); @@ -490,7 +491,7 @@ public class InstallShortcutReceiver extends BroadcastReceiver { AppWidgetProviderInfo info = AppWidgetManager.getInstance(context) .getAppWidgetInfo(widgetId); if (info == null || !info.provider.equals(decoder.launcherIntent.getComponent()) || - !info.getProfile().equals(decoder.user.getUser())) { + !info.getProfile().equals(decoder.user)) { return null; } return new PendingInstallShortcutInfo(info, widgetId, context); @@ -524,14 +525,14 @@ public class InstallShortcutReceiver extends BroadcastReceiver { private static class Decoder extends JSONObject { public final Intent launcherIntent; - public final UserHandleCompat user; + public final UserHandle user; private Decoder(String encoded, Context context) throws JSONException, URISyntaxException { super(encoded); launcherIntent = Intent.parseUri(getString(LAUNCH_INTENT_KEY), 0); user = has(USER_HANDLE_KEY) ? UserManagerCompat.getInstance(context) .getUserForSerialNumber(getLong(USER_HANDLE_KEY)) - : UserHandleCompat.myUserHandle(); + : Process.myUserHandle(); if (user == null) { throw new JSONException("Invalid user"); } diff --git a/src/com/android/launcher3/ItemInfo.java b/src/com/android/launcher3/ItemInfo.java index 3e0ae4ffc..82c7ab8de 100644 --- a/src/com/android/launcher3/ItemInfo.java +++ b/src/com/android/launcher3/ItemInfo.java @@ -19,8 +19,9 @@ package com.android.launcher3; import android.content.ComponentName; import android.content.ContentValues; import android.content.Intent; +import android.os.Process; +import android.os.UserHandle; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ContentWriter; /** @@ -106,10 +107,10 @@ public class ItemInfo { */ public CharSequence contentDescription; - public UserHandleCompat user; + public UserHandle user; public ItemInfo() { - user = UserHandleCompat.myUserHandle(); + user = Process.myUserHandle(); } ItemInfo(ItemInfo info) { diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 85e6a77fb..8aa41588b 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -52,6 +52,7 @@ import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; import android.os.Handler; +import android.os.Process; import android.os.StrictMode; import android.os.SystemClock; import android.os.Trace; @@ -90,7 +91,6 @@ import com.android.launcher3.anim.AnimationLayerSet; import com.android.launcher3.compat.AppWidgetManagerCompat; import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.config.ProviderConfig; @@ -2089,8 +2089,8 @@ public class Launcher extends Activity Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_BIND); intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId); intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_PROVIDER, info.componentName); - mAppWidgetManager.getUser(info.info) - .addToIntent(intent, AppWidgetManager.EXTRA_APPWIDGET_PROVIDER_PROFILE); + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_PROVIDER_PROFILE, + mAppWidgetManager.getUser(info.info)); // TODO: we need to make sure that this accounts for the options bundle. // intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_OPTIONS, options); startActivityForResult(intent, REQUEST_BIND_APPWIDGET); @@ -2323,8 +2323,8 @@ public class Launcher extends Activity Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_BIND); intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, info.appWidgetId); intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_PROVIDER, appWidgetInfo.provider); - mAppWidgetManager.getUser(appWidgetInfo) - .addToIntent(intent, AppWidgetManager.EXTRA_APPWIDGET_PROVIDER_PROFILE); + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_PROVIDER_PROFILE, + mAppWidgetManager.getUser(appWidgetInfo)); startActivityForResult(intent, REQUEST_BIND_PENDING_APPWIDGET); } } else { @@ -2392,7 +2392,7 @@ public class Launcher extends Activity .setNeutralButton(R.string.abandoned_clean_this, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { - final UserHandleCompat user = UserHandleCompat.myUserHandle(); + final UserHandle user = Process.myUserHandle(); mWorkspace.removeAbandonedPromise(packageName, user); } }) @@ -2702,7 +2702,7 @@ public class Launcher extends Activity !intent.hasExtra(INTENT_EXTRA_IGNORE_LAUNCH_ANIMATION); Bundle optsBundle = useLaunchAnimation ? getActivityLaunchOptions(v) : null; - UserHandleCompat user = null; + UserHandle user = null; if (intent.hasExtra(AppInfo.EXTRA_PROFILE)) { long serialNumber = intent.getLongExtra(AppInfo.EXTRA_PROFILE, -1); user = UserManagerCompat.getInstance(this).getUserForSerialNumber(serialNumber); @@ -2720,7 +2720,7 @@ public class Launcher extends Activity && ((ShortcutInfo) item).promisedIntent == null) { // Shortcuts need some special checks due to legacy reasons. startShortcutIntentSafely(intent, optsBundle, item); - } else if (user == null || user.equals(UserHandleCompat.myUserHandle())) { + } else if (user == null || user.equals(Process.myUserHandle())) { // Could be launching some bookkeeping activity startActivity(intent, optsBundle); } else { @@ -3782,7 +3782,7 @@ public class Launcher extends Activity */ @Override public void bindShortcutsChanged(final ArrayList<ShortcutInfo> updated, - final ArrayList<ShortcutInfo> removed, final UserHandleCompat user) { + final ArrayList<ShortcutInfo> removed, final UserHandle user) { Runnable r = new Runnable() { public void run() { bindShortcutsChanged(updated, removed, user); @@ -3851,7 +3851,7 @@ public class Launcher extends Activity @Override public void bindWorkspaceComponentsRemoved( final HashSet<String> packageNames, final HashSet<ComponentName> components, - final UserHandleCompat user) { + final UserHandle user) { Runnable r = new Runnable() { public void run() { bindWorkspaceComponentsRemoved(packageNames, components, user); @@ -3997,36 +3997,6 @@ public class Launcher extends Activity return true; } - // TODO: These method should be a part of LauncherSearchCallback - @TargetApi(Build.VERSION_CODES.LOLLIPOP) - public ItemInfo createAppDragInfo(Intent appLaunchIntent) { - // Called from search suggestion - UserHandleCompat user = null; - if (Utilities.ATLEAST_LOLLIPOP) { - UserHandle userHandle = appLaunchIntent.getParcelableExtra(Intent.EXTRA_USER); - if (userHandle != null) { - user = UserHandleCompat.fromUser(userHandle); - } - } - return createAppDragInfo(appLaunchIntent, user); - } - - // TODO: This method should be a part of LauncherSearchCallback - public ItemInfo createAppDragInfo(Intent intent, UserHandleCompat user) { - if (user == null) { - user = UserHandleCompat.myUserHandle(); - } - - // Called from search suggestion, add the profile extra to the intent to ensure that we - // can launch it correctly - LauncherAppsCompat launcherApps = LauncherAppsCompat.getInstance(this); - LauncherActivityInfoCompat activityInfo = launcherApps.resolveActivity(intent, user); - if (activityInfo == null) { - return null; - } - return new AppInfo(this, activityInfo, user, mIconCache); - } - protected void moveWorkspaceToDefaultScreen() { mWorkspace.moveToDefaultScreen(false); } diff --git a/src/com/android/launcher3/LauncherAppWidgetInfo.java b/src/com/android/launcher3/LauncherAppWidgetInfo.java index 221876711..b68a64b63 100644 --- a/src/com/android/launcher3/LauncherAppWidgetInfo.java +++ b/src/com/android/launcher3/LauncherAppWidgetInfo.java @@ -19,8 +19,8 @@ package com.android.launcher3; import android.appwidget.AppWidgetHostView; import android.content.ComponentName; import android.content.Intent; +import android.os.Process; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ContentWriter; /** @@ -112,7 +112,7 @@ public class LauncherAppWidgetInfo extends ItemInfo { spanX = -1; spanY = -1; // We only support app widgets on current user. - user = UserHandleCompat.myUserHandle(); + user = Process.myUserHandle(); restoreStatus = RESTORE_COMPLETED; } diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java index 2a6f56bf0..0dc91e3a8 100644 --- a/src/com/android/launcher3/LauncherModel.java +++ b/src/com/android/launcher3/LauncherModel.java @@ -37,6 +37,7 @@ import android.os.Parcelable; import android.os.Process; import android.os.SystemClock; import android.os.Trace; +import android.os.UserHandle; import android.provider.BaseColumns; import android.text.TextUtils; import android.util.Log; @@ -48,7 +49,6 @@ import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; import com.android.launcher3.compat.PackageInstallerCompat; import com.android.launcher3.compat.PackageInstallerCompat.PackageInstallInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.config.ProviderConfig; @@ -58,17 +58,17 @@ import com.android.launcher3.folder.FolderIcon; import com.android.launcher3.graphics.LauncherIcons; import com.android.launcher3.logging.FileLog; import com.android.launcher3.model.AddWorkspaceItemsTask; -import com.android.launcher3.model.ExtendedModelTask; import com.android.launcher3.model.BgDataModel; import com.android.launcher3.model.CacheDataUpdatedTask; +import com.android.launcher3.model.ExtendedModelTask; import com.android.launcher3.model.GridSizeMigrationTask; -import com.android.launcher3.model.PackageItemInfo; -import com.android.launcher3.model.SdCardAvailableReceiver; -import com.android.launcher3.model.WidgetItem; import com.android.launcher3.model.PackageInstallStateChangedTask; +import com.android.launcher3.model.PackageItemInfo; import com.android.launcher3.model.PackageUpdatedTask; +import com.android.launcher3.model.SdCardAvailableReceiver; import com.android.launcher3.model.ShortcutsChangedTask; import com.android.launcher3.model.UserLockStateChangedTask; +import com.android.launcher3.model.WidgetItem; import com.android.launcher3.model.WidgetsModel; import com.android.launcher3.provider.ImportDataTask; import com.android.launcher3.provider.LauncherDbUtils; @@ -197,12 +197,12 @@ public class LauncherModel extends BroadcastReceiver ArrayList<AppInfo> addedApps); public void bindAppsUpdated(ArrayList<AppInfo> apps); public void bindShortcutsChanged(ArrayList<ShortcutInfo> updated, - ArrayList<ShortcutInfo> removed, UserHandleCompat user); + ArrayList<ShortcutInfo> removed, UserHandle user); public void bindWidgetsRestored(ArrayList<LauncherAppWidgetInfo> widgets); public void bindRestoreItemsChange(HashSet<ItemInfo> updates); public void bindWorkspaceComponentsRemoved( HashSet<String> packageNames, HashSet<ComponentName> components, - UserHandleCompat user); + UserHandle user); public void bindAppInfosRemoved(ArrayList<AppInfo> appInfos); public void notifyWidgetProvidersChanged(); public void bindAllWidgets(MultiHashMap<PackageItemInfo, WidgetItem> widgets); @@ -255,7 +255,7 @@ public class LauncherModel extends BroadcastReceiver HashSet<String> packages = new HashSet<>(); packages.add(packageName); enqueueModelUpdateTask(new CacheDataUpdatedTask( - CacheDataUpdatedTask.OP_SESSION_UPDATE, UserHandleCompat.myUserHandle(), packages)); + CacheDataUpdatedTask.OP_SESSION_UPDATE, Process.myUserHandle(), packages)); } /** @@ -692,36 +692,36 @@ public class LauncherModel extends BroadcastReceiver } @Override - public void onPackageChanged(String packageName, UserHandleCompat user) { + public void onPackageChanged(String packageName, UserHandle user) { int op = PackageUpdatedTask.OP_UPDATE; enqueueModelUpdateTask(new PackageUpdatedTask(op, user, packageName)); } @Override - public void onPackageRemoved(String packageName, UserHandleCompat user) { + public void onPackageRemoved(String packageName, UserHandle user) { onPackagesRemoved(user, packageName); } - public void onPackagesRemoved(UserHandleCompat user, String... packages) { + public void onPackagesRemoved(UserHandle user, String... packages) { int op = PackageUpdatedTask.OP_REMOVE; enqueueModelUpdateTask(new PackageUpdatedTask(op, user, packages)); } @Override - public void onPackageAdded(String packageName, UserHandleCompat user) { + public void onPackageAdded(String packageName, UserHandle user) { int op = PackageUpdatedTask.OP_ADD; enqueueModelUpdateTask(new PackageUpdatedTask(op, user, packageName)); } @Override - public void onPackagesAvailable(String[] packageNames, UserHandleCompat user, + public void onPackagesAvailable(String[] packageNames, UserHandle user, boolean replacing) { enqueueModelUpdateTask( new PackageUpdatedTask(PackageUpdatedTask.OP_UPDATE, user, packageNames)); } @Override - public void onPackagesUnavailable(String[] packageNames, UserHandleCompat user, + public void onPackagesUnavailable(String[] packageNames, UserHandle user, boolean replacing) { if (!replacing) { enqueueModelUpdateTask(new PackageUpdatedTask( @@ -730,25 +730,25 @@ public class LauncherModel extends BroadcastReceiver } @Override - public void onPackagesSuspended(String[] packageNames, UserHandleCompat user) { + public void onPackagesSuspended(String[] packageNames, UserHandle user) { enqueueModelUpdateTask(new PackageUpdatedTask( PackageUpdatedTask.OP_SUSPEND, user, packageNames)); } @Override - public void onPackagesUnsuspended(String[] packageNames, UserHandleCompat user) { + public void onPackagesUnsuspended(String[] packageNames, UserHandle user) { enqueueModelUpdateTask(new PackageUpdatedTask( PackageUpdatedTask.OP_UNSUSPEND, user, packageNames)); } @Override public void onShortcutsChanged(String packageName, List<ShortcutInfoCompat> shortcuts, - UserHandleCompat user) { + UserHandle user) { enqueueModelUpdateTask(new ShortcutsChangedTask(packageName, shortcuts, user, true)); } public void updatePinnedShortcuts(String packageName, List<ShortcutInfoCompat> shortcuts, - UserHandleCompat user) { + UserHandle user) { enqueueModelUpdateTask(new ShortcutsChangedTask(packageName, shortcuts, user, false)); } @@ -771,7 +771,7 @@ public class LauncherModel extends BroadcastReceiver } else if (Intent.ACTION_MANAGED_PROFILE_AVAILABLE.equals(action) || Intent.ACTION_MANAGED_PROFILE_UNAVAILABLE.equals(action) || Intent.ACTION_MANAGED_PROFILE_UNLOCKED.equals(action)) { - UserHandleCompat user = UserHandleCompat.fromIntent(intent); + UserHandle user = intent.getParcelableExtra(Intent.EXTRA_USER); if (user != null) { if (Intent.ACTION_MANAGED_PROFILE_AVAILABLE.equals(action) || Intent.ACTION_MANAGED_PROFILE_UNAVAILABLE.equals(action)) { @@ -1199,7 +1199,7 @@ public class LauncherModel extends BroadcastReceiver final LauncherAppsCompat launcherApps = LauncherAppsCompat.getInstance(context); final DeepShortcutManager shortcutManager = DeepShortcutManager.getInstance(context); final boolean isSdCardReady = Utilities.isBootCompleted(); - final MultiHashMap<UserHandleCompat, String> pendingPackages = new MultiHashMap<>(); + final MultiHashMap<UserHandle, String> pendingPackages = new MultiHashMap<>(); LauncherAppState app = LauncherAppState.getInstance(); InvariantDeviceProfile profile = app.getInvariantDeviceProfile(); @@ -1282,10 +1282,10 @@ public class LauncherModel extends BroadcastReceiver LauncherSettings.Favorites.OPTIONS); final CursorIconInfo cursorIconInfo = new CursorIconInfo(mContext, c); - final LongSparseArray<UserHandleCompat> allUsers = new LongSparseArray<>(); + final LongSparseArray<UserHandle> allUsers = new LongSparseArray<>(); final LongSparseArray<Boolean> quietMode = new LongSparseArray<>(); final LongSparseArray<Boolean> unlockedUsers = new LongSparseArray<>(); - for (UserHandleCompat user : mUserManager.getUserProfiles()) { + for (UserHandle user : mUserManager.getUserProfiles()) { long serialNo = mUserManager.getSerialNumberForUser(user); allUsers.put(serialNo, user); quietMode.put(serialNo, mUserManager.isQuietModeEnabled(user)); @@ -1318,7 +1318,7 @@ public class LauncherModel extends BroadcastReceiver long id; long serialNumber; Intent intent; - UserHandleCompat user; + UserHandle user; String targetPackage; while (!mStopped && c.moveToNext()) { @@ -1465,7 +1465,7 @@ public class LauncherModel extends BroadcastReceiver c.getInt(rankIndex) >= FolderIcon.NUM_ITEMS_IN_PREVIEW; if (itemReplaced) { - if (user.equals(UserHandleCompat.myUserHandle())) { + if (user.equals(Process.myUserHandle())) { info = getAppShortcutInfo(intent, user, null, cursorIconInfo, false, useLowResIcon); } else { @@ -1474,7 +1474,7 @@ public class LauncherModel extends BroadcastReceiver continue; } } else if (restored) { - if (user.equals(UserHandleCompat.myUserHandle())) { + if (user.equals(Process.myUserHandle())) { info = getRestoredItemInfo(c, intent, promiseType, itemType, cursorIconInfo); intent = getRestoredItemIntent(c, context, intent); @@ -2251,11 +2251,11 @@ public class LauncherModel extends BroadcastReceiver return; } - final List<UserHandleCompat> profiles = mUserManager.getUserProfiles(); + final List<UserHandle> profiles = mUserManager.getUserProfiles(); // Clear the list of apps mBgAllAppsList.clear(); - for (UserHandleCompat user : profiles) { + for (UserHandle user : profiles) { // Query for the set of apps final long qiaTime = DEBUG_LOADERS ? SystemClock.uptimeMillis() : 0; final List<LauncherActivityInfoCompat> apps = mLauncherApps.getActivityList(null, user); @@ -2341,7 +2341,7 @@ public class LauncherModel extends BroadcastReceiver DeepShortcutManager shortcutManager = DeepShortcutManager.getInstance(mContext); mHasShortcutHostPermission = shortcutManager.hasHostPermission(); if (mHasShortcutHostPermission) { - for (UserHandleCompat user : mUserManager.getUserProfiles()) { + for (UserHandle user : mUserManager.getUserProfiles()) { if (mUserManager.isUserUnlocked(user)) { List<ShortcutInfoCompat> shortcuts = shortcutManager.queryForAllShortcuts(user); @@ -2399,7 +2399,7 @@ public class LauncherModel extends BroadcastReceiver /** * Called when the icons for packages have been updated in the icon cache. */ - public void onPackageIconsUpdated(HashSet<String> updatedPackages, UserHandleCompat user) { + public void onPackageIconsUpdated(HashSet<String> updatedPackages, UserHandle user) { // If any package icon has changed (app was updated while launcher was dead), // update the corresponding shortcuts. enqueueModelUpdateTask(new CacheDataUpdatedTask( @@ -2519,7 +2519,7 @@ public class LauncherModel extends BroadcastReceiver public ShortcutInfo getRestoredItemInfo(Cursor c, Intent intent, int promiseType, int itemType, CursorIconInfo iconInfo) { final ShortcutInfo info = new ShortcutInfo(); - info.user = UserHandleCompat.myUserHandle(); + info.user = Process.myUserHandle(); info.iconBitmap = iconInfo.loadIcon(c, info); // the fallback icon if (info.iconBitmap == null) { @@ -2569,9 +2569,8 @@ public class LauncherModel extends BroadcastReceiver * * If c is not null, then it will be used to fill in missing data like the title and icon. */ - public ShortcutInfo getAppShortcutInfo(Intent intent, - UserHandleCompat user, Cursor c, CursorIconInfo iconInfo, - boolean allowMissingTarget, boolean useLowResIcon) { + public ShortcutInfo getAppShortcutInfo(Intent intent, UserHandle user, Cursor c, + CursorIconInfo iconInfo, boolean allowMissingTarget, boolean useLowResIcon) { if (user == null) { Log.d(TAG, "Null user found in getShortcutInfo"); return null; @@ -2625,7 +2624,7 @@ public class LauncherModel extends BroadcastReceiver @Thunk ShortcutInfo getShortcutInfo(Cursor c, CursorIconInfo iconInfo) { final ShortcutInfo info = new ShortcutInfo(); // Non-app shortcuts are only supported for current user. - info.user = UserHandleCompat.myUserHandle(); + info.user = Process.myUserHandle(); info.itemType = LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT; // TODO: If there's an explicit component and we can't install that, delete it. @@ -2661,7 +2660,7 @@ public class LauncherModel extends BroadcastReceiver // Only support intents for current user for now. Intents sent from other // users wouldn't get here without intent forwarding anyway. - info.user = UserHandleCompat.myUserHandle(); + info.user = Process.myUserHandle(); if (bitmap instanceof Bitmap) { info.iconBitmap = LauncherIcons.createIconBitmap((Bitmap) bitmap, context); diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index b30c3f3cc..c6edae9c1 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -45,6 +45,7 @@ import android.os.Handler; import android.os.Message; import android.os.Process; import android.os.Trace; +import android.os.UserHandle; import android.os.UserManager; import android.text.TextUtils; import android.util.Log; @@ -52,7 +53,6 @@ import android.util.Log; import com.android.launcher3.AutoInstallsLayout.LayoutParserCallback; import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.LauncherSettings.WorkspaceScreens; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.config.ProviderConfig; @@ -657,13 +657,13 @@ public class LauncherProvider extends ContentProvider { Utilities.getPrefs(mContext).edit().putBoolean(EMPTY_DATABASE_CREATED, true).commit(); // When a new DB is created, remove all previously stored managed profile information. - ManagedProfileHeuristic.processAllUsers(Collections.<UserHandleCompat>emptyList(), + ManagedProfileHeuristic.processAllUsers(Collections.<UserHandle>emptyList(), mContext); } public long getDefaultUserSerial() { return UserManagerCompat.getInstance(mContext).getSerialNumberForUser( - UserHandleCompat.myUserHandle()); + Process.myUserHandle()); } private void addFavoritesTable(SQLiteDatabase db, boolean optional) { diff --git a/src/com/android/launcher3/ShortcutInfo.java b/src/com/android/launcher3/ShortcutInfo.java index fd6533706..b9010c76e 100644 --- a/src/com/android/launcher3/ShortcutInfo.java +++ b/src/com/android/launcher3/ShortcutInfo.java @@ -23,10 +23,11 @@ import android.content.Intent; import android.graphics.Bitmap; import android.graphics.drawable.Drawable; import android.os.Build; +import android.os.Process; +import android.os.UserHandle; import android.text.TextUtils; import com.android.launcher3.LauncherSettings.Favorites; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.graphics.LauncherIcons; import com.android.launcher3.shortcuts.DeepShortcutManager; @@ -257,7 +258,7 @@ public class ShortcutInfo extends ItemInfo { IconCache cache = launcherAppState.getIconCache(); Bitmap unbadgedBitmap = unbadgedDrawable == null - ? cache.getDefaultIcon(UserHandleCompat.myUserHandle()) + ? cache.getDefaultIcon(Process.myUserHandle()) : LauncherIcons.createScaledBitmapWithoutShadow(unbadgedDrawable, context); iconBitmap = getBadgedIcon(unbadgedBitmap, shortcutInfo, cache, context); } diff --git a/src/com/android/launcher3/UninstallDropTarget.java b/src/com/android/launcher3/UninstallDropTarget.java index 00c613a88..a7839ec29 100644 --- a/src/com/android/launcher3/UninstallDropTarget.java +++ b/src/com/android/launcher3/UninstallDropTarget.java @@ -8,14 +8,13 @@ import android.content.pm.ApplicationInfo; import android.net.Uri; import android.os.Build; import android.os.Bundle; +import android.os.UserHandle; import android.os.UserManager; import android.util.AttributeSet; -import android.util.Pair; import android.widget.Toast; import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; public class UninstallDropTarget extends ButtonDropTarget { @@ -60,7 +59,7 @@ public class UninstallDropTarget extends ButtonDropTarget { */ private static ComponentName getUninstallTarget(Context context, Object item) { Intent intent = null; - UserHandleCompat user = null; + UserHandle user = null; if (item instanceof AppInfo) { AppInfo info = (AppInfo) item; intent = info.intent; @@ -120,7 +119,7 @@ public class UninstallDropTarget extends ButtonDropTarget { Uri.fromParts("package", cn.getPackageName(), cn.getClassName())) .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); - info.user.addToIntent(intent, Intent.EXTRA_USER); + intent.putExtra(Intent.EXTRA_USER, info.user); launcher.startActivity(intent); isUninstallable = true; } @@ -139,7 +138,7 @@ public class UninstallDropTarget extends ButtonDropTarget { */ protected static void sendUninstallResult( final Launcher launcher, boolean activityStarted, - final ComponentName cn, final UserHandleCompat user, + final ComponentName cn, final UserHandle user, final DropTargetResultCallback callback) { if (activityStarted) { final Runnable checkIfUninstallWasSuccess = new Runnable() { diff --git a/src/com/android/launcher3/WidgetPreviewLoader.java b/src/com/android/launcher3/WidgetPreviewLoader.java index 354b8ec41..399920e65 100644 --- a/src/com/android/launcher3/WidgetPreviewLoader.java +++ b/src/com/android/launcher3/WidgetPreviewLoader.java @@ -25,11 +25,11 @@ import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.AsyncTask; import android.os.Handler; +import android.os.UserHandle; import android.util.Log; import android.util.LongSparseArray; import com.android.launcher3.compat.AppWidgetManagerCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.model.WidgetItem; import com.android.launcher3.util.ComponentKey; @@ -149,11 +149,11 @@ public class WidgetPreviewLoader { mDb.insertOrReplace(values); } - public void removePackage(String packageName, UserHandleCompat user) { + public void removePackage(String packageName, UserHandle user) { removePackage(packageName, user, mUserManager.getSerialNumberForUser(user)); } - private void removePackage(String packageName, UserHandleCompat user, long userSerial) { + private void removePackage(String packageName, UserHandle user, long userSerial) { synchronized(mPackageVersions) { mPackageVersions.remove(packageName); } @@ -217,7 +217,7 @@ public class WidgetPreviewLoader { for (int i = 0; i < packagesToDelete.size(); i++) { long userId = packagesToDelete.keyAt(i); - UserHandleCompat user = mUserManager.getUserForSerialNumber(userId); + UserHandle user = mUserManager.getUserForSerialNumber(userId); for (String pkg : packagesToDelete.valueAt(i)) { removePackage(pkg, user, userId); } @@ -652,7 +652,7 @@ public class WidgetPreviewLoader { // TODO: remove dependency on size @Thunk final String size; - public WidgetCacheKey(ComponentName componentName, UserHandleCompat user, String size) { + public WidgetCacheKey(ComponentName componentName, UserHandle user, String size) { super(componentName, user); this.size = size; } diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index ab9836757..cbea7e078 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -38,6 +38,7 @@ import android.graphics.drawable.Drawable; import android.os.Handler; import android.os.IBinder; import android.os.Parcelable; +import android.os.UserHandle; import android.util.AttributeSet; import android.util.Log; import android.util.Property; @@ -61,7 +62,6 @@ import com.android.launcher3.accessibility.OverviewScreenAccessibilityDelegate; import com.android.launcher3.accessibility.WorkspaceAccessibilityHelper; import com.android.launcher3.anim.AnimationLayerSet; import com.android.launcher3.compat.AppWidgetManagerCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.config.ProviderConfig; import com.android.launcher3.dragndrop.DragController; @@ -4016,7 +4016,7 @@ public class Workspace extends PagedView }); } - public void removeAbandonedPromise(String packageName, UserHandleCompat user) { + public void removeAbandonedPromise(String packageName, UserHandle user) { HashSet<String> packages = new HashSet<>(1); packages.add(packageName); ItemInfoMatcher matcher = ItemInfoMatcher.ofPackages(packages, user); diff --git a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java index 8b7a6ba4d..0bfbd3eba 100644 --- a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java +++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java @@ -16,12 +16,12 @@ package com.android.launcher3.allapps; import android.content.Context; +import android.os.Process; import android.util.Log; import com.android.launcher3.AppInfo; import com.android.launcher3.Launcher; import com.android.launcher3.compat.AlphabeticIndexCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.config.ProviderConfig; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.LabelComparator; @@ -363,13 +363,13 @@ public class AlphabeticalAppsList { if (DEBUG_PREDICTIONS) { if (mPredictedAppComponents.isEmpty() && !mApps.isEmpty()) { mPredictedAppComponents.add(new ComponentKey(mApps.get(0).componentName, - UserHandleCompat.myUserHandle())); + Process.myUserHandle())); mPredictedAppComponents.add(new ComponentKey(mApps.get(0).componentName, - UserHandleCompat.myUserHandle())); + Process.myUserHandle())); mPredictedAppComponents.add(new ComponentKey(mApps.get(0).componentName, - UserHandleCompat.myUserHandle())); + Process.myUserHandle())); mPredictedAppComponents.add(new ComponentKey(mApps.get(0).componentName, - UserHandleCompat.myUserHandle())); + Process.myUserHandle())); } } diff --git a/src/com/android/launcher3/allapps/AppInfoComparator.java b/src/com/android/launcher3/allapps/AppInfoComparator.java index 1f5fece5f..80577a76d 100644 --- a/src/com/android/launcher3/allapps/AppInfoComparator.java +++ b/src/com/android/launcher3/allapps/AppInfoComparator.java @@ -16,9 +16,10 @@ package com.android.launcher3.allapps; import android.content.Context; +import android.os.Process; +import android.os.UserHandle; import com.android.launcher3.AppInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.util.LabelComparator; @@ -30,12 +31,12 @@ import java.util.Comparator; public class AppInfoComparator implements Comparator<AppInfo> { private final UserManagerCompat mUserManager; - private final UserHandleCompat mMyUser; + private final UserHandle mMyUser; private final LabelComparator mLabelComparator; public AppInfoComparator(Context context) { mUserManager = UserManagerCompat.getInstance(context); - mMyUser = UserHandleCompat.myUserHandle(); + mMyUser = Process.myUserHandle(); mLabelComparator = new LabelComparator(); } diff --git a/src/com/android/launcher3/compat/AppWidgetManagerCompat.java b/src/com/android/launcher3/compat/AppWidgetManagerCompat.java index 811cacfc0..5388f2a3c 100644 --- a/src/com/android/launcher3/compat/AppWidgetManagerCompat.java +++ b/src/com/android/launcher3/compat/AppWidgetManagerCompat.java @@ -25,6 +25,7 @@ import android.content.Context; import android.graphics.Bitmap; import android.graphics.drawable.Drawable; import android.os.Bundle; +import android.os.UserHandle; import com.android.launcher3.IconCache; import com.android.launcher3.LauncherAppWidgetProviderInfo; @@ -77,7 +78,7 @@ public abstract class AppWidgetManagerCompat { public abstract boolean bindAppWidgetIdIfAllowed( int appWidgetId, AppWidgetProviderInfo info, Bundle options); - public abstract UserHandleCompat getUser(LauncherAppWidgetProviderInfo info); + public abstract UserHandle getUser(LauncherAppWidgetProviderInfo info); public abstract void startConfigActivity(AppWidgetProviderInfo info, int widgetId, Activity activity, AppWidgetHost host, int requestCode); @@ -90,7 +91,7 @@ public abstract class AppWidgetManagerCompat { int imageWidth, int imageHeight); public abstract LauncherAppWidgetProviderInfo findProvider( - ComponentName provider, UserHandleCompat user); + ComponentName provider, UserHandle user); public abstract HashMap<ComponentKey, AppWidgetProviderInfo> getAllProvidersMap(); } diff --git a/src/com/android/launcher3/compat/AppWidgetManagerCompatV16.java b/src/com/android/launcher3/compat/AppWidgetManagerCompatV16.java index de9414ed2..e7d8e2943 100644 --- a/src/com/android/launcher3/compat/AppWidgetManagerCompatV16.java +++ b/src/com/android/launcher3/compat/AppWidgetManagerCompatV16.java @@ -28,6 +28,8 @@ import android.graphics.Bitmap; import android.graphics.drawable.Drawable; import android.os.Build; import android.os.Bundle; +import android.os.Process; +import android.os.UserHandle; import com.android.launcher3.IconCache; import com.android.launcher3.LauncherAppWidgetProviderInfo; @@ -65,8 +67,8 @@ class AppWidgetManagerCompatV16 extends AppWidgetManagerCompat { } @Override - public UserHandleCompat getUser(LauncherAppWidgetProviderInfo info) { - return UserHandleCompat.myUserHandle(); + public UserHandle getUser(LauncherAppWidgetProviderInfo info) { + return Process.myUserHandle(); } @Override @@ -97,7 +99,7 @@ class AppWidgetManagerCompatV16 extends AppWidgetManagerCompat { @Override public LauncherAppWidgetProviderInfo findProvider( - ComponentName provider, UserHandleCompat user) { + ComponentName provider, UserHandle user) { for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProviders()) { if (info.provider.equals(provider)) { return LauncherAppWidgetProviderInfo.fromProviderInfo(mContext, info); @@ -109,7 +111,7 @@ class AppWidgetManagerCompatV16 extends AppWidgetManagerCompat { @Override public HashMap<ComponentKey, AppWidgetProviderInfo> getAllProvidersMap() { HashMap<ComponentKey, AppWidgetProviderInfo> result = new HashMap<>(); - UserHandleCompat user = UserHandleCompat.myUserHandle(); + UserHandle user = Process.myUserHandle(); for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProviders()) { result.put(new ComponentKey(info.provider, user), info); } diff --git a/src/com/android/launcher3/compat/AppWidgetManagerCompatVL.java b/src/com/android/launcher3/compat/AppWidgetManagerCompatVL.java index a1570e66a..0acf75373 100644 --- a/src/com/android/launcher3/compat/AppWidgetManagerCompatVL.java +++ b/src/com/android/launcher3/compat/AppWidgetManagerCompatVL.java @@ -33,6 +33,7 @@ import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.Build; import android.os.Bundle; +import android.os.Process; import android.os.UserHandle; import android.os.UserManager; import android.view.View; @@ -81,11 +82,11 @@ class AppWidgetManagerCompatVL extends AppWidgetManagerCompat { } @Override - public UserHandleCompat getUser(LauncherAppWidgetProviderInfo info) { + public UserHandle getUser(LauncherAppWidgetProviderInfo info) { if (info.isCustomWidget) { - return UserHandleCompat.myUserHandle(); + return Process.myUserHandle(); } - return UserHandleCompat.fromUser(info.getProfile()); + return info.getProfile(); } @Override @@ -150,9 +151,9 @@ class AppWidgetManagerCompatVL extends AppWidgetManagerCompat { } @Override - public LauncherAppWidgetProviderInfo findProvider(ComponentName provider, UserHandleCompat user) { + public LauncherAppWidgetProviderInfo findProvider(ComponentName provider, UserHandle user) { for (AppWidgetProviderInfo info : mAppWidgetManager - .getInstalledProvidersForProfile(user.getUser())) { + .getInstalledProvidersForProfile(user)) { if (info.provider.equals(provider)) { return LauncherAppWidgetProviderInfo.fromProviderInfo(mContext, info); } @@ -164,10 +165,9 @@ class AppWidgetManagerCompatVL extends AppWidgetManagerCompat { public HashMap<ComponentKey, AppWidgetProviderInfo> getAllProvidersMap() { HashMap<ComponentKey, AppWidgetProviderInfo> result = new HashMap<>(); for (UserHandle user : mUserManager.getUserProfiles()) { - UserHandleCompat userHandle = UserHandleCompat.fromUser(user); for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProvidersForProfile(user)) { - result.put(new ComponentKey(info.provider, userHandle), info); + result.put(new ComponentKey(info.provider, user), info); } } return result; diff --git a/src/com/android/launcher3/compat/DeferredLauncherActivityInfo.java b/src/com/android/launcher3/compat/DeferredLauncherActivityInfo.java index 46d36d1b0..4dd05bb00 100644 --- a/src/com/android/launcher3/compat/DeferredLauncherActivityInfo.java +++ b/src/com/android/launcher3/compat/DeferredLauncherActivityInfo.java @@ -21,7 +21,7 @@ import android.content.Context; import android.content.Intent; import android.content.pm.ApplicationInfo; import android.graphics.drawable.Drawable; -import android.util.Log; +import android.os.UserHandle; /** * {@link LauncherActivityInfoCompat} which loads its data only when needed. @@ -29,13 +29,13 @@ import android.util.Log; public class DeferredLauncherActivityInfo extends LauncherActivityInfoCompat { private final ComponentName mComponent; - private final UserHandleCompat mUser; + private final UserHandle mUser; private final Context mContext; private LauncherActivityInfoCompat mActualInfo; public DeferredLauncherActivityInfo( - ComponentName component, UserHandleCompat user, Context context) { + ComponentName component, UserHandle user, Context context) { mComponent = component; mUser = user; mContext = context; @@ -47,7 +47,7 @@ public class DeferredLauncherActivityInfo extends LauncherActivityInfoCompat { } @Override - public UserHandleCompat getUser() { + public UserHandle getUser() { return mUser; } diff --git a/src/com/android/launcher3/compat/LauncherActivityInfoCompat.java b/src/com/android/launcher3/compat/LauncherActivityInfoCompat.java index 65af4eaea..830b60acc 100644 --- a/src/com/android/launcher3/compat/LauncherActivityInfoCompat.java +++ b/src/com/android/launcher3/compat/LauncherActivityInfoCompat.java @@ -19,6 +19,7 @@ package com.android.launcher3.compat; import android.content.ComponentName; import android.content.pm.ApplicationInfo; import android.graphics.drawable.Drawable; +import android.os.UserHandle; public abstract class LauncherActivityInfoCompat { @@ -26,7 +27,7 @@ public abstract class LauncherActivityInfoCompat { } public abstract ComponentName getComponentName(); - public abstract UserHandleCompat getUser(); + public abstract UserHandle getUser(); public abstract CharSequence getLabel(); public abstract Drawable getIcon(int density); public abstract ApplicationInfo getApplicationInfo(); diff --git a/src/com/android/launcher3/compat/LauncherActivityInfoCompatV16.java b/src/com/android/launcher3/compat/LauncherActivityInfoCompatV16.java index fee0376bd..d6978030f 100644 --- a/src/com/android/launcher3/compat/LauncherActivityInfoCompatV16.java +++ b/src/com/android/launcher3/compat/LauncherActivityInfoCompatV16.java @@ -18,14 +18,16 @@ package com.android.launcher3.compat; import android.content.ComponentName; import android.content.Context; -import android.content.pm.ApplicationInfo; -import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ActivityInfo; -import android.content.pm.PackageManager; +import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.graphics.drawable.Drawable; +import android.os.Process; +import android.os.UserHandle; public class LauncherActivityInfoCompatV16 extends LauncherActivityInfoCompat { @@ -46,8 +48,8 @@ public class LauncherActivityInfoCompatV16 extends LauncherActivityInfoCompat { return mComponentName; } - public UserHandleCompat getUser() { - return UserHandleCompat.myUserHandle(); + public UserHandle getUser() { + return Process.myUserHandle(); } public CharSequence getLabel() { diff --git a/src/com/android/launcher3/compat/LauncherActivityInfoCompatVL.java b/src/com/android/launcher3/compat/LauncherActivityInfoCompatVL.java index 67c5c2795..874b3c3ac 100644 --- a/src/com/android/launcher3/compat/LauncherActivityInfoCompatVL.java +++ b/src/com/android/launcher3/compat/LauncherActivityInfoCompatVL.java @@ -22,6 +22,7 @@ import android.content.pm.ApplicationInfo; import android.content.pm.LauncherActivityInfo; import android.graphics.drawable.Drawable; import android.os.Build; +import android.os.UserHandle; @TargetApi(Build.VERSION_CODES.LOLLIPOP) public class LauncherActivityInfoCompatVL extends LauncherActivityInfoCompat { @@ -36,8 +37,8 @@ public class LauncherActivityInfoCompatVL extends LauncherActivityInfoCompat { return mLauncherActivityInfo.getComponentName(); } - public UserHandleCompat getUser() { - return UserHandleCompat.fromUser(mLauncherActivityInfo.getUser()); + public UserHandle getUser() { + return mLauncherActivityInfo.getUser(); } public CharSequence getLabel() { diff --git a/src/com/android/launcher3/compat/LauncherAppsCompat.java b/src/com/android/launcher3/compat/LauncherAppsCompat.java index 645e68a8f..c75298b0d 100644 --- a/src/com/android/launcher3/compat/LauncherAppsCompat.java +++ b/src/com/android/launcher3/compat/LauncherAppsCompat.java @@ -19,10 +19,9 @@ package com.android.launcher3.compat; import android.content.ComponentName; import android.content.Context; import android.content.Intent; -import android.content.pm.LauncherApps; import android.graphics.Rect; -import android.graphics.drawable.Drawable; import android.os.Bundle; +import android.os.UserHandle; import com.android.launcher3.Utilities; import com.android.launcher3.shortcuts.ShortcutInfoCompat; @@ -32,15 +31,15 @@ import java.util.List; public abstract class LauncherAppsCompat { public interface OnAppsChangedCallbackCompat { - void onPackageRemoved(String packageName, UserHandleCompat user); - void onPackageAdded(String packageName, UserHandleCompat user); - void onPackageChanged(String packageName, UserHandleCompat user); - void onPackagesAvailable(String[] packageNames, UserHandleCompat user, boolean replacing); - void onPackagesUnavailable(String[] packageNames, UserHandleCompat user, boolean replacing); - void onPackagesSuspended(String[] packageNames, UserHandleCompat user); - void onPackagesUnsuspended(String[] packageNames, UserHandleCompat user); + void onPackageRemoved(String packageName, UserHandle user); + void onPackageAdded(String packageName, UserHandle user); + void onPackageChanged(String packageName, UserHandle user); + void onPackagesAvailable(String[] packageNames, UserHandle user, boolean replacing); + void onPackagesUnavailable(String[] packageNames, UserHandle user, boolean replacing); + void onPackagesSuspended(String[] packageNames, UserHandle user); + void onPackagesUnsuspended(String[] packageNames, UserHandle user); void onShortcutsChanged(String packageName, List<ShortcutInfoCompat> shortcuts, - UserHandleCompat user); + UserHandle user); } protected LauncherAppsCompat() { @@ -63,16 +62,16 @@ public abstract class LauncherAppsCompat { } public abstract List<LauncherActivityInfoCompat> getActivityList(String packageName, - UserHandleCompat user); + UserHandle user); public abstract LauncherActivityInfoCompat resolveActivity(Intent intent, - UserHandleCompat user); - public abstract void startActivityForProfile(ComponentName component, UserHandleCompat user, + UserHandle user); + public abstract void startActivityForProfile(ComponentName component, UserHandle user, Rect sourceBounds, Bundle opts); - public abstract void showAppDetailsForProfile(ComponentName component, UserHandleCompat user); + public abstract void showAppDetailsForProfile(ComponentName component, UserHandle user); public abstract void addOnAppsChangedCallback(OnAppsChangedCallbackCompat listener); public abstract void removeOnAppsChangedCallback(OnAppsChangedCallbackCompat listener); - public abstract boolean isPackageEnabledForProfile(String packageName, UserHandleCompat user); + public abstract boolean isPackageEnabledForProfile(String packageName, UserHandle user); public abstract boolean isActivityEnabledForProfile(ComponentName component, - UserHandleCompat user); - public abstract boolean isPackageSuspendedForProfile(String packageName, UserHandleCompat user); + UserHandle user); + public abstract boolean isPackageSuspendedForProfile(String packageName, UserHandle user); } diff --git a/src/com/android/launcher3/compat/LauncherAppsCompatV16.java b/src/com/android/launcher3/compat/LauncherAppsCompatV16.java index 49a0df676..0d1efa85e 100644 --- a/src/com/android/launcher3/compat/LauncherAppsCompatV16.java +++ b/src/com/android/launcher3/compat/LauncherAppsCompatV16.java @@ -22,18 +22,17 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.ActivityInfo; -import android.content.pm.LauncherApps; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ResolveInfo; import android.graphics.Rect; -import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Bundle; +import android.os.Process; +import android.os.UserHandle; import android.provider.Settings; import com.android.launcher3.Utilities; -import com.android.launcher3.shortcuts.ShortcutInfoCompat; import com.android.launcher3.util.PackageManagerHelper; import com.android.launcher3.util.Thunk; @@ -60,7 +59,7 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { } public List<LauncherActivityInfoCompat> getActivityList(String packageName, - UserHandleCompat user) { + UserHandle user) { final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); mainIntent.addCategory(Intent.CATEGORY_LAUNCHER); mainIntent.setPackage(packageName); @@ -73,7 +72,7 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { return list; } - public LauncherActivityInfoCompat resolveActivity(Intent intent, UserHandleCompat user) { + public LauncherActivityInfoCompat resolveActivity(Intent intent, UserHandle user) { ResolveInfo info = mPm.resolveActivity(intent, 0); if (info != null) { return new LauncherActivityInfoCompatV16(mContext, info); @@ -81,7 +80,7 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { return null; } - public void startActivityForProfile(ComponentName component, UserHandleCompat user, + public void startActivityForProfile(ComponentName component, UserHandle user, Rect sourceBounds, Bundle opts) { Intent launchIntent = new Intent(Intent.ACTION_MAIN); launchIntent.addCategory(Intent.CATEGORY_LAUNCHER); @@ -91,7 +90,7 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { mContext.startActivity(launchIntent, opts); } - public void showAppDetailsForProfile(ComponentName component, UserHandleCompat user) { + public void showAppDetailsForProfile(ComponentName component, UserHandle user) { String packageName = component.getPackageName(); Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.fromParts("package", packageName, null)); @@ -116,11 +115,11 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { } } - public boolean isPackageEnabledForProfile(String packageName, UserHandleCompat user) { + public boolean isPackageEnabledForProfile(String packageName, UserHandle user) { return PackageManagerHelper.isAppEnabled(mPm, packageName); } - public boolean isActivityEnabledForProfile(ComponentName component, UserHandleCompat user) { + public boolean isActivityEnabledForProfile(ComponentName component, UserHandle user) { try { ActivityInfo info = mPm.getActivityInfo(component, 0); return info != null && info.isEnabled(); @@ -129,7 +128,7 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { } } - public boolean isPackageSuspendedForProfile(String packageName, UserHandleCompat user) { + public boolean isPackageSuspendedForProfile(String packageName, UserHandle user) { return false; } @@ -156,7 +155,7 @@ public class LauncherAppsCompatV16 extends LauncherAppsCompat { @Thunk class PackageMonitor extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); - final UserHandleCompat user = UserHandleCompat.myUserHandle(); + final UserHandle user = Process.myUserHandle(); if (Intent.ACTION_PACKAGE_CHANGED.equals(action) || Intent.ACTION_PACKAGE_REMOVED.equals(action) diff --git a/src/com/android/launcher3/compat/LauncherAppsCompatVL.java b/src/com/android/launcher3/compat/LauncherAppsCompatVL.java index d97bf2f74..f408da0aa 100644 --- a/src/com/android/launcher3/compat/LauncherAppsCompatVL.java +++ b/src/com/android/launcher3/compat/LauncherAppsCompatVL.java @@ -49,10 +49,8 @@ public class LauncherAppsCompatVL extends LauncherAppsCompatV16 { mLauncherApps = (LauncherApps) context.getSystemService("launcherapps"); } - public List<LauncherActivityInfoCompat> getActivityList(String packageName, - UserHandleCompat user) { - List<LauncherActivityInfo> list = mLauncherApps.getActivityList(packageName, - user.getUser()); + public List<LauncherActivityInfoCompat> getActivityList(String packageName, UserHandle user) { + List<LauncherActivityInfo> list = mLauncherApps.getActivityList(packageName, user); if (list.size() == 0) { return Collections.emptyList(); } @@ -64,8 +62,8 @@ public class LauncherAppsCompatVL extends LauncherAppsCompatV16 { return compatList; } - public LauncherActivityInfoCompat resolveActivity(Intent intent, UserHandleCompat user) { - LauncherActivityInfo activity = mLauncherApps.resolveActivity(intent, user.getUser()); + public LauncherActivityInfoCompat resolveActivity(Intent intent, UserHandle user) { + LauncherActivityInfo activity = mLauncherApps.resolveActivity(intent, user); if (activity != null) { return new LauncherActivityInfoCompatVL(activity); } else { @@ -73,13 +71,13 @@ public class LauncherAppsCompatVL extends LauncherAppsCompatV16 { } } - public void startActivityForProfile(ComponentName component, UserHandleCompat user, + public void startActivityForProfile(ComponentName component, UserHandle user, Rect sourceBounds, Bundle opts) { - mLauncherApps.startMainActivity(component, user.getUser(), sourceBounds, opts); + mLauncherApps.startMainActivity(component, user, sourceBounds, opts); } - public void showAppDetailsForProfile(ComponentName component, UserHandleCompat user) { - mLauncherApps.startAppDetailsActivity(component, user.getUser(), null, null); + public void showAppDetailsForProfile(ComponentName component, UserHandle user) { + mLauncherApps.startAppDetailsActivity(component, user, null, null); } public void addOnAppsChangedCallback(LauncherAppsCompat.OnAppsChangedCallbackCompat callback) { @@ -101,15 +99,15 @@ public class LauncherAppsCompatVL extends LauncherAppsCompatV16 { } } - public boolean isPackageEnabledForProfile(String packageName, UserHandleCompat user) { - return mLauncherApps.isPackageEnabled(packageName, user.getUser()); + public boolean isPackageEnabledForProfile(String packageName, UserHandle user) { + return mLauncherApps.isPackageEnabled(packageName, user); } - public boolean isActivityEnabledForProfile(ComponentName component, UserHandleCompat user) { - return mLauncherApps.isActivityEnabled(component, user.getUser()); + public boolean isActivityEnabledForProfile(ComponentName component, UserHandle user) { + return mLauncherApps.isActivityEnabled(component, user); } - public boolean isPackageSuspendedForProfile(String packageName, UserHandleCompat user) { + public boolean isPackageSuspendedForProfile(String packageName, UserHandle user) { return false; } @@ -121,33 +119,32 @@ public class LauncherAppsCompatVL extends LauncherAppsCompatV16 { } public void onPackageRemoved(String packageName, UserHandle user) { - mCallback.onPackageRemoved(packageName, UserHandleCompat.fromUser(user)); + mCallback.onPackageRemoved(packageName, user); } public void onPackageAdded(String packageName, UserHandle user) { - mCallback.onPackageAdded(packageName, UserHandleCompat.fromUser(user)); + mCallback.onPackageAdded(packageName, user); } public void onPackageChanged(String packageName, UserHandle user) { - mCallback.onPackageChanged(packageName, UserHandleCompat.fromUser(user)); + mCallback.onPackageChanged(packageName, user); } public void onPackagesAvailable(String[] packageNames, UserHandle user, boolean replacing) { - mCallback.onPackagesAvailable(packageNames, UserHandleCompat.fromUser(user), replacing); + mCallback.onPackagesAvailable(packageNames, user, replacing); } public void onPackagesUnavailable(String[] packageNames, UserHandle user, boolean replacing) { - mCallback.onPackagesUnavailable(packageNames, UserHandleCompat.fromUser(user), - replacing); + mCallback.onPackagesUnavailable(packageNames, user, replacing); } public void onPackagesSuspended(String[] packageNames, UserHandle user) { - mCallback.onPackagesSuspended(packageNames, UserHandleCompat.fromUser(user)); + mCallback.onPackagesSuspended(packageNames, user); } public void onPackagesUnsuspended(String[] packageNames, UserHandle user) { - mCallback.onPackagesUnsuspended(packageNames, UserHandleCompat.fromUser(user)); + mCallback.onPackagesUnsuspended(packageNames, user); } @Override @@ -158,8 +155,7 @@ public class LauncherAppsCompatVL extends LauncherAppsCompatV16 { shortcutInfoCompats.add(new ShortcutInfoCompat(shortcutInfo)); } - mCallback.onShortcutsChanged(packageName, shortcutInfoCompats, - UserHandleCompat.fromUser(user)); + mCallback.onShortcutsChanged(packageName, shortcutInfoCompats, user); } } } diff --git a/src/com/android/launcher3/compat/PackageInstallerCompatVL.java b/src/com/android/launcher3/compat/PackageInstallerCompatVL.java index 948471c5e..192cb0cf1 100644 --- a/src/com/android/launcher3/compat/PackageInstallerCompatVL.java +++ b/src/com/android/launcher3/compat/PackageInstallerCompatVL.java @@ -23,6 +23,8 @@ import android.content.pm.PackageInstaller.SessionCallback; import android.content.pm.PackageInstaller.SessionInfo; import android.os.Build; import android.os.Handler; +import android.os.Process; +import android.os.UserHandle; import android.util.SparseArray; import com.android.launcher3.IconCache; @@ -52,7 +54,7 @@ public class PackageInstallerCompatVL extends PackageInstallerCompat { @Override public HashMap<String, Integer> updateAndGetActiveSessionCache() { HashMap<String, Integer> activePackages = new HashMap<>(); - UserHandleCompat user = UserHandleCompat.myUserHandle(); + UserHandle user = Process.myUserHandle(); for (SessionInfo info : mInstaller.getAllSessions()) { addSessionInfoToCache(info, user); if (info.getAppPackageName() != null) { @@ -63,7 +65,7 @@ public class PackageInstallerCompatVL extends PackageInstallerCompat { return activePackages; } - @Thunk void addSessionInfoToCache(SessionInfo info, UserHandleCompat user) { + @Thunk void addSessionInfoToCache(SessionInfo info, UserHandle user) { String packageName = info.getAppPackageName(); if (packageName != null) { mCache.cachePackageInstallInfo(packageName, user, info.getAppIcon(), @@ -124,7 +126,7 @@ public class PackageInstallerCompatVL extends PackageInstallerCompat { private void pushSessionDisplayToLauncher(int sessionId) { SessionInfo session = mInstaller.getSessionInfo(sessionId); if (session != null && session.getAppPackageName() != null) { - addSessionInfoToCache(session, UserHandleCompat.myUserHandle()); + addSessionInfoToCache(session, Process.myUserHandle()); LauncherAppState app = LauncherAppState.getInstanceNoCreate(); if (app != null) { diff --git a/src/com/android/launcher3/compat/UserHandleCompat.java b/src/com/android/launcher3/compat/UserHandleCompat.java deleted file mode 100644 index 50af21b96..000000000 --- a/src/com/android/launcher3/compat/UserHandleCompat.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (C) 2014 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.launcher3.compat; - -import android.annotation.TargetApi; -import android.content.Intent; -import android.os.Build; -import android.os.UserHandle; -import com.android.launcher3.Utilities; - -public class UserHandleCompat { - private UserHandle mUser; - - private UserHandleCompat(UserHandle user) { - mUser = user; - } - - private UserHandleCompat() { - } - - @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) - public static UserHandleCompat myUserHandle() { - if (Utilities.ATLEAST_JB_MR1) { - return new UserHandleCompat(android.os.Process.myUserHandle()); - } else { - return new UserHandleCompat(); - } - } - - public static UserHandleCompat fromUser(UserHandle user) { - if (user == null) { - return null; - } else { - return new UserHandleCompat(user); - } - } - - public UserHandle getUser() { - return mUser; - } - - @Override - public String toString() { - if (Utilities.ATLEAST_JB_MR1) { - return mUser.toString(); - } else { - return ""; - } - } - - @Override - public boolean equals(Object other) { - if (!(other instanceof UserHandleCompat)) { - return false; - } - if (Utilities.ATLEAST_JB_MR1) { - return mUser.equals(((UserHandleCompat) other).mUser); - } else { - return true; - } - } - - @Override - public int hashCode() { - if (Utilities.ATLEAST_JB_MR1) { - return mUser.hashCode(); - } else { - return 0; - } - } - - /** - * Adds {@link UserHandle} to the intent in for L or above. - * Pre-L the launcher doesn't support showing apps for multiple - * profiles so this is a no-op. - */ - public void addToIntent(Intent intent, String name) { - if (Utilities.ATLEAST_LOLLIPOP && mUser != null) { - intent.putExtra(name, mUser); - } - } - - public static UserHandleCompat fromIntent(Intent intent) { - if (Utilities.ATLEAST_LOLLIPOP) { - UserHandle user = intent.getParcelableExtra(Intent.EXTRA_USER); - if (user != null) { - return UserHandleCompat.fromUser(user); - } - } - return null; - } -} diff --git a/src/com/android/launcher3/compat/UserManagerCompat.java b/src/com/android/launcher3/compat/UserManagerCompat.java index b40eaa260..24c95b11e 100644 --- a/src/com/android/launcher3/compat/UserManagerCompat.java +++ b/src/com/android/launcher3/compat/UserManagerCompat.java @@ -17,6 +17,7 @@ package com.android.launcher3.compat; import android.content.Context; +import android.os.UserHandle; import com.android.launcher3.Utilities; @@ -55,13 +56,13 @@ public abstract class UserManagerCompat { */ public abstract void enableAndResetCache(); - public abstract List<UserHandleCompat> getUserProfiles(); - public abstract long getSerialNumberForUser(UserHandleCompat user); - public abstract UserHandleCompat getUserForSerialNumber(long serialNumber); - public abstract CharSequence getBadgedLabelForUser(CharSequence label, UserHandleCompat user); - public abstract long getUserCreationTime(UserHandleCompat user); - public abstract boolean isQuietModeEnabled(UserHandleCompat user); - public abstract boolean isUserUnlocked(UserHandleCompat user); + public abstract List<UserHandle> getUserProfiles(); + public abstract long getSerialNumberForUser(UserHandle user); + public abstract UserHandle getUserForSerialNumber(long serialNumber); + public abstract CharSequence getBadgedLabelForUser(CharSequence label, UserHandle user); + public abstract long getUserCreationTime(UserHandle user); + public abstract boolean isQuietModeEnabled(UserHandle user); + public abstract boolean isUserUnlocked(UserHandle user); public abstract boolean isDemoUser(); } diff --git a/src/com/android/launcher3/compat/UserManagerCompatV16.java b/src/com/android/launcher3/compat/UserManagerCompatV16.java index 9bd4567a1..60374aa15 100644 --- a/src/com/android/launcher3/compat/UserManagerCompatV16.java +++ b/src/com/android/launcher3/compat/UserManagerCompatV16.java @@ -16,6 +16,9 @@ package com.android.launcher3.compat; +import android.os.Process; +import android.os.UserHandle; + import java.util.ArrayList; import java.util.List; @@ -24,26 +27,26 @@ public class UserManagerCompatV16 extends UserManagerCompat { UserManagerCompatV16() { } - public List<UserHandleCompat> getUserProfiles() { - List<UserHandleCompat> profiles = new ArrayList<UserHandleCompat>(1); - profiles.add(UserHandleCompat.myUserHandle()); + public List<UserHandle> getUserProfiles() { + List<UserHandle> profiles = new ArrayList<UserHandle>(1); + profiles.add(Process.myUserHandle()); return profiles; } - public UserHandleCompat getUserForSerialNumber(long serialNumber) { - return UserHandleCompat.myUserHandle(); + public UserHandle getUserForSerialNumber(long serialNumber) { + return Process.myUserHandle(); } - public long getSerialNumberForUser(UserHandleCompat user) { + public long getSerialNumberForUser(UserHandle user) { return 0; } - public CharSequence getBadgedLabelForUser(CharSequence label, UserHandleCompat user) { + public CharSequence getBadgedLabelForUser(CharSequence label, UserHandle user) { return label; } @Override - public long getUserCreationTime(UserHandleCompat user) { + public long getUserCreationTime(UserHandle user) { return 0; } @@ -52,12 +55,12 @@ public class UserManagerCompatV16 extends UserManagerCompat { } @Override - public boolean isQuietModeEnabled(UserHandleCompat user) { + public boolean isQuietModeEnabled(UserHandle user) { return false; } @Override - public boolean isUserUnlocked(UserHandleCompat user) { + public boolean isUserUnlocked(UserHandle user) { return true; } diff --git a/src/com/android/launcher3/compat/UserManagerCompatV17.java b/src/com/android/launcher3/compat/UserManagerCompatV17.java index 75203b7f3..08e894750 100644 --- a/src/com/android/launcher3/compat/UserManagerCompatV17.java +++ b/src/com/android/launcher3/compat/UserManagerCompatV17.java @@ -19,6 +19,8 @@ package com.android.launcher3.compat; import android.annotation.TargetApi; import android.content.Context; import android.os.Build; +import android.os.Process; +import android.os.UserHandle; import android.os.UserManager; import com.android.launcher3.util.LongArrayMap; @@ -28,10 +30,10 @@ import java.util.HashMap; @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) public class UserManagerCompatV17 extends UserManagerCompatV16 { - protected LongArrayMap<UserHandleCompat> mUsers; + protected LongArrayMap<UserHandle> mUsers; // Create a separate reverse map as LongArrayMap.indexOfValue checks if objects are same // and not {@link Object#equals} - protected HashMap<UserHandleCompat, Long> mUserToSerialMap; + protected HashMap<UserHandle, Long> mUserToSerialMap; protected UserManager mUserManager; @@ -39,23 +41,23 @@ public class UserManagerCompatV17 extends UserManagerCompatV16 { mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); } - public long getSerialNumberForUser(UserHandleCompat user) { + public long getSerialNumberForUser(UserHandle user) { synchronized (this) { if (mUserToSerialMap != null) { Long serial = mUserToSerialMap.get(user); return serial == null ? 0 : serial; } } - return mUserManager.getSerialNumberForUser(user.getUser()); + return mUserManager.getSerialNumberForUser(user); } - public UserHandleCompat getUserForSerialNumber(long serialNumber) { + public UserHandle getUserForSerialNumber(long serialNumber) { synchronized (this) { if (mUsers != null) { return mUsers.get(serialNumber); } } - return UserHandleCompat.fromUser(mUserManager.getUserForSerialNumber(serialNumber)); + return mUserManager.getUserForSerialNumber(serialNumber); } @Override @@ -63,8 +65,8 @@ public class UserManagerCompatV17 extends UserManagerCompatV16 { synchronized (this) { mUsers = new LongArrayMap<>(); mUserToSerialMap = new HashMap<>(); - UserHandleCompat myUser = UserHandleCompat.myUserHandle(); - long serial = mUserManager.getSerialNumberForUser(myUser.getUser()); + UserHandle myUser = Process.myUserHandle(); + long serial = mUserManager.getSerialNumberForUser(myUser); mUsers.put(serial, myUser); mUserToSerialMap.put(myUser, serial); } diff --git a/src/com/android/launcher3/compat/UserManagerCompatVL.java b/src/com/android/launcher3/compat/UserManagerCompatVL.java index 2552b0c2c..277460281 100644 --- a/src/com/android/launcher3/compat/UserManagerCompatVL.java +++ b/src/com/android/launcher3/compat/UserManagerCompatVL.java @@ -53,46 +53,35 @@ public class UserManagerCompatVL extends UserManagerCompatV17 { if (users != null) { for (UserHandle user : users) { long serial = mUserManager.getSerialNumberForUser(user); - UserHandleCompat userCompat = UserHandleCompat.fromUser(user); - mUsers.put(serial, userCompat); - mUserToSerialMap.put(userCompat, serial); + mUsers.put(serial, user); + mUserToSerialMap.put(user, serial); } } } } @Override - public List<UserHandleCompat> getUserProfiles() { + public List<UserHandle> getUserProfiles() { synchronized (this) { if (mUsers != null) { - List<UserHandleCompat> users = new ArrayList<>(); - users.addAll(mUserToSerialMap.keySet()); - return users; + return new ArrayList<>(mUserToSerialMap.keySet()); } } List<UserHandle> users = mUserManager.getUserProfiles(); - if (users == null) { - return Collections.emptyList(); - } - ArrayList<UserHandleCompat> compatUsers = new ArrayList<UserHandleCompat>( - users.size()); - for (UserHandle user : users) { - compatUsers.add(UserHandleCompat.fromUser(user)); - } - return compatUsers; + return users == null ? Collections.<UserHandle>emptyList() : users; } @Override - public CharSequence getBadgedLabelForUser(CharSequence label, UserHandleCompat user) { + public CharSequence getBadgedLabelForUser(CharSequence label, UserHandle user) { if (user == null) { return label; } - return mPm.getUserBadgedLabel(label, user.getUser()); + return mPm.getUserBadgedLabel(label, user); } @Override - public long getUserCreationTime(UserHandleCompat user) { + public long getUserCreationTime(UserHandle user) { SharedPreferences prefs = Utilities.getPrefs(mContext); String key = USER_CREATION_TIME_KEY + getSerialNumberForUser(user); if (!prefs.contains(key)) { diff --git a/src/com/android/launcher3/compat/UserManagerCompatVM.java b/src/com/android/launcher3/compat/UserManagerCompatVM.java index 81d67ea43..75c187713 100644 --- a/src/com/android/launcher3/compat/UserManagerCompatVM.java +++ b/src/com/android/launcher3/compat/UserManagerCompatVM.java @@ -19,6 +19,7 @@ package com.android.launcher3.compat; import android.annotation.TargetApi; import android.content.Context; import android.os.Build; +import android.os.UserHandle; @TargetApi(Build.VERSION_CODES.M) public class UserManagerCompatVM extends UserManagerCompatVL { @@ -28,7 +29,7 @@ public class UserManagerCompatVM extends UserManagerCompatVL { } @Override - public long getUserCreationTime(UserHandleCompat user) { - return mUserManager.getUserCreationTime(user.getUser()); + public long getUserCreationTime(UserHandle user) { + return mUserManager.getUserCreationTime(user); } } diff --git a/src/com/android/launcher3/compat/UserManagerCompatVN.java b/src/com/android/launcher3/compat/UserManagerCompatVN.java index 4edac0522..50a02178d 100644 --- a/src/com/android/launcher3/compat/UserManagerCompatVN.java +++ b/src/com/android/launcher3/compat/UserManagerCompatVN.java @@ -19,8 +19,7 @@ package com.android.launcher3.compat; import android.annotation.TargetApi; import android.content.Context; import android.os.Build; - -import com.android.launcher3.Utilities; +import android.os.UserHandle; @TargetApi(Build.VERSION_CODES.N) public class UserManagerCompatVN extends UserManagerCompatVM { @@ -30,13 +29,13 @@ public class UserManagerCompatVN extends UserManagerCompatVM { } @Override - public boolean isQuietModeEnabled(UserHandleCompat user) { - return mUserManager.isQuietModeEnabled(user.getUser()); + public boolean isQuietModeEnabled(UserHandle user) { + return mUserManager.isQuietModeEnabled(user); } @Override - public boolean isUserUnlocked(UserHandleCompat user) { - return mUserManager.isUserUnlocked(user.getUser()); + public boolean isUserUnlocked(UserHandle user) { + return mUserManager.isUserUnlocked(user); } } diff --git a/src/com/android/launcher3/graphics/LauncherIcons.java b/src/com/android/launcher3/graphics/LauncherIcons.java index 6f9f7ffc9..c59b3a3a6 100644 --- a/src/com/android/launcher3/graphics/LauncherIcons.java +++ b/src/com/android/launcher3/graphics/LauncherIcons.java @@ -33,11 +33,12 @@ import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.graphics.drawable.PaintDrawable; import android.os.Build; +import android.os.Process; +import android.os.UserHandle; import com.android.launcher3.LauncherAppState; import com.android.launcher3.R; import com.android.launcher3.Utilities; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.config.FeatureFlags; /** @@ -105,7 +106,7 @@ public class LauncherIcons { */ @TargetApi(Build.VERSION_CODES.LOLLIPOP) public static Bitmap createBadgedIconBitmap( - Drawable icon, UserHandleCompat user, Context context) { + Drawable icon, UserHandle user, Context context) { float scale = FeatureFlags.LAUNCHER3_DISABLE_ICON_NORMALIZATION ? 1 : IconNormalizer.getInstance().getScale(icon, null); Bitmap bitmap = createIconBitmap(icon, context, scale); @@ -115,12 +116,12 @@ public class LauncherIcons { /** * Badges the provided icon with the user badge if required. */ - public static Bitmap badgeIconForUser(Bitmap icon, UserHandleCompat user, Context context) { + public static Bitmap badgeIconForUser(Bitmap icon, UserHandle user, Context context) { if (Utilities.ATLEAST_LOLLIPOP && user != null - && !UserHandleCompat.myUserHandle().equals(user)) { + && !Process.myUserHandle().equals(user)) { BitmapDrawable drawable = new FixedSizeBitmapDrawable(icon); Drawable badged = context.getPackageManager().getUserBadgedIcon( - drawable, user.getUser()); + drawable, user); if (badged instanceof BitmapDrawable) { return ((BitmapDrawable) badged).getBitmap(); } else { diff --git a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java index 4cbb0879b..a9ceb0256 100644 --- a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java +++ b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java @@ -17,6 +17,7 @@ package com.android.launcher3.model; import android.content.Context; import android.content.Intent; +import android.os.UserHandle; import android.util.LongSparseArray; import android.util.Pair; @@ -32,7 +33,6 @@ import com.android.launcher3.LauncherModel.CallbackTask; import com.android.launcher3.LauncherModel.Callbacks; import com.android.launcher3.LauncherSettings; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.GridOccupancy; import com.android.launcher3.util.Provider; @@ -141,7 +141,7 @@ public class AddWorkspaceItemsTask extends ExtendedModelTask { * Returns true if the shortcuts already exists on the workspace. This must be called after * the workspace has been loaded. We identify a shortcut by its intent. */ - protected boolean shortcutExists(BgDataModel dataModel, Intent intent, UserHandleCompat user) { + protected boolean shortcutExists(BgDataModel dataModel, Intent intent, UserHandle user) { final String intentWithPkg, intentWithoutPkg; if (intent.getComponent() != null) { // If component is not null, an intent with null package will produce diff --git a/src/com/android/launcher3/model/BgDataModel.java b/src/com/android/launcher3/model/BgDataModel.java index 3d5463724..05f43aff4 100644 --- a/src/com/android/launcher3/model/BgDataModel.java +++ b/src/com/android/launcher3/model/BgDataModel.java @@ -16,6 +16,7 @@ package com.android.launcher3.model; import android.content.Context; +import android.os.UserHandle; import android.util.Log; import android.util.MutableInt; @@ -26,7 +27,6 @@ import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherAppWidgetInfo; import com.android.launcher3.LauncherSettings; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.config.ProviderConfig; import com.android.launcher3.shortcuts.DeepShortcutManager; import com.android.launcher3.shortcuts.ShortcutInfoCompat; @@ -216,7 +216,7 @@ public class BgDataModel { * Clear all the deep shortcuts for the given package, and re-add the new shortcuts. */ public synchronized void updateDeepShortcutMap( - String packageName, UserHandleCompat user, List<ShortcutInfoCompat> shortcuts) { + String packageName, UserHandle user, List<ShortcutInfoCompat> shortcuts) { if (packageName != null) { Iterator<ComponentKey> keysIter = deepShortcutMap.keySet().iterator(); while (keysIter.hasNext()) { diff --git a/src/com/android/launcher3/model/CacheDataUpdatedTask.java b/src/com/android/launcher3/model/CacheDataUpdatedTask.java index 64771d530..9d693a40e 100644 --- a/src/com/android/launcher3/model/CacheDataUpdatedTask.java +++ b/src/com/android/launcher3/model/CacheDataUpdatedTask.java @@ -16,6 +16,7 @@ package com.android.launcher3.model; import android.content.ComponentName; +import android.os.UserHandle; import com.android.launcher3.AllAppsList; import com.android.launcher3.AppInfo; @@ -27,7 +28,6 @@ import com.android.launcher3.LauncherModel.Callbacks; import com.android.launcher3.LauncherSettings; import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import java.util.ArrayList; import java.util.HashSet; @@ -41,10 +41,10 @@ public class CacheDataUpdatedTask extends ExtendedModelTask { public static final int OP_SESSION_UPDATE = 2; private final int mOp; - private final UserHandleCompat mUser; + private final UserHandle mUser; private final HashSet<String> mPackages; - public CacheDataUpdatedTask(int op, UserHandleCompat user, HashSet<String> packages) { + public CacheDataUpdatedTask(int op, UserHandle user, HashSet<String> packages) { mOp = op; mUser = user; mPackages = packages; diff --git a/src/com/android/launcher3/model/ExtendedModelTask.java b/src/com/android/launcher3/model/ExtendedModelTask.java index ccc600768..05419662b 100644 --- a/src/com/android/launcher3/model/ExtendedModelTask.java +++ b/src/com/android/launcher3/model/ExtendedModelTask.java @@ -15,11 +15,12 @@ */ package com.android.launcher3.model; +import android.os.UserHandle; + +import com.android.launcher3.LauncherModel.BaseModelUpdateTask; import com.android.launcher3.LauncherModel.CallbackTask; import com.android.launcher3.LauncherModel.Callbacks; -import com.android.launcher3.LauncherModel.BaseModelUpdateTask; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.MultiHashMap; @@ -31,14 +32,14 @@ import java.util.ArrayList; public abstract class ExtendedModelTask extends BaseModelUpdateTask { public void bindUpdatedShortcuts( - ArrayList<ShortcutInfo> updatedShortcuts, UserHandleCompat user) { + ArrayList<ShortcutInfo> updatedShortcuts, UserHandle user) { bindUpdatedShortcuts(updatedShortcuts, new ArrayList<ShortcutInfo>(), user); } public void bindUpdatedShortcuts( final ArrayList<ShortcutInfo> updatedShortcuts, final ArrayList<ShortcutInfo> removedShortcuts, - final UserHandleCompat user) { + final UserHandle user) { if (!updatedShortcuts.isEmpty() || !removedShortcuts.isEmpty()) { scheduleCallbackTask(new CallbackTask() { @Override diff --git a/src/com/android/launcher3/model/PackageUpdatedTask.java b/src/com/android/launcher3/model/PackageUpdatedTask.java index aae3490a7..bafa95b6c 100644 --- a/src/com/android/launcher3/model/PackageUpdatedTask.java +++ b/src/com/android/launcher3/model/PackageUpdatedTask.java @@ -21,6 +21,7 @@ import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.graphics.Bitmap; +import android.os.UserHandle; import android.util.Log; import com.android.launcher3.AllAppsList; @@ -38,7 +39,6 @@ import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.ShortcutInfo; import com.android.launcher3.Utilities; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.graphics.LauncherIcons; import com.android.launcher3.util.FlagOp; @@ -70,10 +70,10 @@ public class PackageUpdatedTask extends ExtendedModelTask { public static final int OP_USER_AVAILABILITY_CHANGE = 7; // user available/unavailable private final int mOp; - private final UserHandleCompat mUser; + private final UserHandle mUser; private final String[] mPackages; - public PackageUpdatedTask(int op, UserHandleCompat user, String... packages) { + public PackageUpdatedTask(int op, UserHandle user, String... packages) { mOp = op; mUser = user; mPackages = packages; diff --git a/src/com/android/launcher3/model/SdCardAvailableReceiver.java b/src/com/android/launcher3/model/SdCardAvailableReceiver.java index 54260c915..d710de84e 100644 --- a/src/com/android/launcher3/model/SdCardAvailableReceiver.java +++ b/src/com/android/launcher3/model/SdCardAvailableReceiver.java @@ -20,11 +20,10 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; +import android.os.UserHandle; -import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherModel; import com.android.launcher3.compat.LauncherAppsCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.MultiHashMap; import com.android.launcher3.util.PackageManagerHelper; @@ -43,10 +42,10 @@ public class SdCardAvailableReceiver extends BroadcastReceiver { private final LauncherModel mModel; private final Context mContext; - private final MultiHashMap<UserHandleCompat, String> mPackages; + private final MultiHashMap<UserHandle, String> mPackages; public SdCardAvailableReceiver(LauncherModel model, Context context, - MultiHashMap<UserHandleCompat, String> packages) { + MultiHashMap<UserHandle, String> packages) { mModel = model; mContext = context; mPackages = packages; @@ -56,8 +55,8 @@ public class SdCardAvailableReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { final LauncherAppsCompat launcherApps = LauncherAppsCompat.getInstance(context); final PackageManager manager = context.getPackageManager(); - for (Entry<UserHandleCompat, ArrayList<String>> entry : mPackages.entrySet()) { - UserHandleCompat user = entry.getKey(); + for (Entry<UserHandle, ArrayList<String>> entry : mPackages.entrySet()) { + UserHandle user = entry.getKey(); final ArrayList<String> packagesRemoved = new ArrayList<>(); final ArrayList<String> packagesUnavailable = new ArrayList<>(); diff --git a/src/com/android/launcher3/model/ShortcutsChangedTask.java b/src/com/android/launcher3/model/ShortcutsChangedTask.java index 3314353b7..3750a7e63 100644 --- a/src/com/android/launcher3/model/ShortcutsChangedTask.java +++ b/src/com/android/launcher3/model/ShortcutsChangedTask.java @@ -16,6 +16,7 @@ package com.android.launcher3.model; import android.content.Context; +import android.os.UserHandle; import com.android.launcher3.AllAppsList; import com.android.launcher3.ItemInfo; @@ -23,7 +24,6 @@ import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherSettings; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.shortcuts.DeepShortcutManager; import com.android.launcher3.shortcuts.ShortcutInfoCompat; import com.android.launcher3.util.MultiHashMap; @@ -38,11 +38,11 @@ public class ShortcutsChangedTask extends ExtendedModelTask { private final String mPackageName; private final List<ShortcutInfoCompat> mShortcuts; - private final UserHandleCompat mUser; + private final UserHandle mUser; private final boolean mUpdateIdMap; public ShortcutsChangedTask(String packageName, List<ShortcutInfoCompat> shortcuts, - UserHandleCompat user, boolean updateIdMap) { + UserHandle user, boolean updateIdMap) { mPackageName = packageName; mShortcuts = shortcuts; mUser = user; diff --git a/src/com/android/launcher3/model/UserLockStateChangedTask.java b/src/com/android/launcher3/model/UserLockStateChangedTask.java index a89fe0bd7..15496b896 100644 --- a/src/com/android/launcher3/model/UserLockStateChangedTask.java +++ b/src/com/android/launcher3/model/UserLockStateChangedTask.java @@ -16,6 +16,7 @@ package com.android.launcher3.model; import android.content.Context; +import android.os.UserHandle; import com.android.launcher3.AllAppsList; import com.android.launcher3.ItemInfo; @@ -23,7 +24,6 @@ import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherSettings; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.shortcuts.DeepShortcutManager; import com.android.launcher3.shortcuts.ShortcutInfoCompat; @@ -40,9 +40,9 @@ import java.util.List; */ public class UserLockStateChangedTask extends ExtendedModelTask { - private final UserHandleCompat mUser; + private final UserHandle mUser; - public UserLockStateChangedTask(UserHandleCompat user) { + public UserLockStateChangedTask(UserHandle user) { mUser = user; } diff --git a/src/com/android/launcher3/model/WidgetItem.java b/src/com/android/launcher3/model/WidgetItem.java index 0d7ba1e11..a079301bc 100644 --- a/src/com/android/launcher3/model/WidgetItem.java +++ b/src/com/android/launcher3/model/WidgetItem.java @@ -4,13 +4,14 @@ import android.content.ComponentName; import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.os.Process; +import android.os.UserHandle; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherAppWidgetProviderInfo; import com.android.launcher3.Utilities; import com.android.launcher3.compat.AppWidgetManagerCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ComponentKey; import java.text.Collator; @@ -22,7 +23,7 @@ import java.text.Collator; */ public class WidgetItem extends ComponentKey implements Comparable<WidgetItem> { - private static UserHandleCompat sMyUserHandle; + private static UserHandle sMyUserHandle; private static Collator sCollator; public final LauncherAppWidgetProviderInfo widgetInfo; @@ -45,7 +46,7 @@ public class WidgetItem extends ComponentKey implements Comparable<WidgetItem> { public WidgetItem(ResolveInfo info, PackageManager pm) { super(new ComponentName(info.activityInfo.packageName, info.activityInfo.name), - UserHandleCompat.myUserHandle()); + Process.myUserHandle()); label = Utilities.trim(info.loadLabel(pm)); widgetInfo = null; activityInfo = info.activityInfo; @@ -56,7 +57,7 @@ public class WidgetItem extends ComponentKey implements Comparable<WidgetItem> { public int compareTo(WidgetItem another) { if (sMyUserHandle == null) { // Delay these object creation until required. - sMyUserHandle = UserHandleCompat.myUserHandle(); + sMyUserHandle = Process.myUserHandle(); sCollator = Collator.getInstance(); } diff --git a/src/com/android/launcher3/model/WidgetsModel.java b/src/com/android/launcher3/model/WidgetsModel.java index 5ad6f0fff..59dc859af 100644 --- a/src/com/android/launcher3/model/WidgetsModel.java +++ b/src/com/android/launcher3/model/WidgetsModel.java @@ -6,6 +6,8 @@ import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.os.Process; +import android.os.UserHandle; import android.util.Log; import com.android.launcher3.AppFilter; @@ -15,7 +17,6 @@ import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherAppWidgetProviderInfo; import com.android.launcher3.Utilities; import com.android.launcher3.compat.AppWidgetManagerCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.config.ProviderConfig; import com.android.launcher3.util.MultiHashMap; import com.android.launcher3.util.Preconditions; @@ -99,7 +100,7 @@ public class WidgetsModel { mWidgetsList.clear(); InvariantDeviceProfile idp = LauncherAppState.getInstance().getInvariantDeviceProfile(); - UserHandleCompat myUser = UserHandleCompat.myUserHandle(); + UserHandle myUser = Process.myUserHandle(); // add and update. for (WidgetItem item: rawWidgetsShortcuts) { diff --git a/src/com/android/launcher3/provider/ImportDataTask.java b/src/com/android/launcher3/provider/ImportDataTask.java index 5cb34e856..9d8e62ae5 100644 --- a/src/com/android/launcher3/provider/ImportDataTask.java +++ b/src/com/android/launcher3/provider/ImportDataTask.java @@ -44,7 +44,6 @@ import com.android.launcher3.LauncherSettings.WorkspaceScreens; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.Workspace; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.config.ProviderConfig; @@ -130,7 +129,7 @@ public class ImportDataTask { private void importWorkspaceItems( long firsetScreenId, LongSparseArray<Long> screenIdMap) throws Exception { String profileId = Long.toString(UserManagerCompat.getInstance(mContext) - .getSerialNumberForUser(UserHandleCompat.myUserHandle())); + .getSerialNumberForUser(Process.myUserHandle())); boolean createEmptyRowOnFirstScreen = false; if (FeatureFlags.QSB_ON_FIRST_SCREEN) { diff --git a/src/com/android/launcher3/shortcuts/DeepShortcutManager.java b/src/com/android/launcher3/shortcuts/DeepShortcutManager.java index 41f1a47af..941391362 100644 --- a/src/com/android/launcher3/shortcuts/DeepShortcutManager.java +++ b/src/com/android/launcher3/shortcuts/DeepShortcutManager.java @@ -25,12 +25,12 @@ import android.content.pm.ShortcutInfo; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.os.Bundle; +import android.os.UserHandle; import android.util.Log; import com.android.launcher3.ItemInfo; import com.android.launcher3.LauncherSettings; import com.android.launcher3.Utilities; -import com.android.launcher3.compat.UserHandleCompat; import java.util.ArrayList; import java.util.Collections; @@ -83,7 +83,7 @@ public class DeepShortcutManager { * because we only get "key" fields in onShortcutsChanged(). */ public List<ShortcutInfoCompat> queryForFullDetails(String packageName, - List<String> shortcutIds, UserHandleCompat user) { + List<String> shortcutIds, UserHandle user) { return query(FLAG_GET_ALL, packageName, null, shortcutIds, user); } @@ -92,7 +92,7 @@ public class DeepShortcutManager { * to be displayed in the shortcuts container on long press. */ public List<ShortcutInfoCompat> queryForShortcutsContainer(ComponentName activity, - List<String> ids, UserHandleCompat user) { + List<String> ids, UserHandle user) { return query(ShortcutQuery.FLAG_MATCH_MANIFEST | ShortcutQuery.FLAG_MATCH_DYNAMIC, activity.getPackageName(), activity, ids, user); } @@ -106,11 +106,11 @@ public class DeepShortcutManager { if (Utilities.ATLEAST_NOUGAT_MR1) { String packageName = key.componentName.getPackageName(); String id = key.getId(); - UserHandleCompat user = key.user; + UserHandle user = key.user; List<String> pinnedIds = extractIds(queryForPinnedShortcuts(packageName, user)); pinnedIds.remove(id); try { - mLauncherApps.pinShortcuts(packageName, pinnedIds, user.getUser()); + mLauncherApps.pinShortcuts(packageName, pinnedIds, user); mWasLastCallSuccess = true; } catch (SecurityException|IllegalStateException e) { Log.w(TAG, "Failed to unpin shortcut", e); @@ -128,11 +128,11 @@ public class DeepShortcutManager { if (Utilities.ATLEAST_NOUGAT_MR1) { String packageName = key.componentName.getPackageName(); String id = key.getId(); - UserHandleCompat user = key.user; + UserHandle user = key.user; List<String> pinnedIds = extractIds(queryForPinnedShortcuts(packageName, user)); pinnedIds.add(id); try { - mLauncherApps.pinShortcuts(packageName, pinnedIds, user.getUser()); + mLauncherApps.pinShortcuts(packageName, pinnedIds, user); mWasLastCallSuccess = true; } catch (SecurityException|IllegalStateException e) { Log.w(TAG, "Failed to pin shortcut", e); @@ -143,11 +143,11 @@ public class DeepShortcutManager { @TargetApi(25) public void startShortcut(String packageName, String id, Rect sourceBounds, - Bundle startActivityOptions, UserHandleCompat user) { + Bundle startActivityOptions, UserHandle user) { if (Utilities.ATLEAST_NOUGAT_MR1) { try { mLauncherApps.startShortcut(packageName, id, sourceBounds, - startActivityOptions, user.getUser()); + startActivityOptions, user); mWasLastCallSuccess = true; } catch (SecurityException|IllegalStateException e) { Log.e(TAG, "Failed to start shortcut", e); @@ -177,12 +177,11 @@ public class DeepShortcutManager { * * If packageName is null, returns all pinned shortcuts regardless of package. */ - public List<ShortcutInfoCompat> queryForPinnedShortcuts(String packageName, - UserHandleCompat user) { + public List<ShortcutInfoCompat> queryForPinnedShortcuts(String packageName, UserHandle user) { return query(ShortcutQuery.FLAG_MATCH_PINNED, packageName, null, null, user); } - public List<ShortcutInfoCompat> queryForAllShortcuts(UserHandleCompat user) { + public List<ShortcutInfoCompat> queryForAllShortcuts(UserHandle user) { return query(FLAG_GET_ALL, null, null, null, user); } @@ -202,7 +201,7 @@ public class DeepShortcutManager { */ @TargetApi(25) private List<ShortcutInfoCompat> query(int flags, String packageName, - ComponentName activity, List<String> shortcutIds, UserHandleCompat user) { + ComponentName activity, List<String> shortcutIds, UserHandle user) { if (Utilities.ATLEAST_NOUGAT_MR1) { ShortcutQuery q = new ShortcutQuery(); q.setQueryFlags(flags); @@ -213,7 +212,7 @@ public class DeepShortcutManager { } List<ShortcutInfo> shortcutInfos = null; try { - shortcutInfos = mLauncherApps.getShortcuts(q, user.getUser()); + shortcutInfos = mLauncherApps.getShortcuts(q, user); mWasLastCallSuccess = true; } catch (SecurityException|IllegalStateException e) { Log.e(TAG, "Failed to query for shortcuts", e); diff --git a/src/com/android/launcher3/shortcuts/DeepShortcutsContainer.java b/src/com/android/launcher3/shortcuts/DeepShortcutsContainer.java index 9cbd5f8f2..e547f4468 100644 --- a/src/com/android/launcher3/shortcuts/DeepShortcutsContainer.java +++ b/src/com/android/launcher3/shortcuts/DeepShortcutsContainer.java @@ -34,6 +34,7 @@ import android.graphics.drawable.ShapeDrawable; import android.os.Build; import android.os.Handler; import android.os.Looper; +import android.os.UserHandle; import android.util.AttributeSet; import android.view.Gravity; import android.view.LayoutInflater; @@ -60,7 +61,6 @@ import com.android.launcher3.R; import com.android.launcher3.ShortcutInfo; import com.android.launcher3.Utilities; import com.android.launcher3.accessibility.ShortcutMenuAccessibilityDelegate; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.dragndrop.DragLayer; import com.android.launcher3.dragndrop.DragOptions; @@ -161,7 +161,7 @@ public class DeepShortcutsContainer extends AbstractFloatingView final Looper workerLooper = LauncherModel.getWorkerLooper(); final Handler uiHandler = new Handler(Looper.getMainLooper()); final ItemInfo originalInfo = (ItemInfo) originalIcon.getTag(); - final UserHandleCompat user = originalInfo.user; + final UserHandle user = originalInfo.user; final ComponentName activity = originalInfo.getTargetComponent(); new Handler(workerLooper).postAtFrontOfQueue(new Runnable() { @Override diff --git a/src/com/android/launcher3/shortcuts/ShortcutInfoCompat.java b/src/com/android/launcher3/shortcuts/ShortcutInfoCompat.java index a6da6683c..acc632c36 100644 --- a/src/com/android/launcher3/shortcuts/ShortcutInfoCompat.java +++ b/src/com/android/launcher3/shortcuts/ShortcutInfoCompat.java @@ -22,11 +22,11 @@ import android.content.Context; import android.content.Intent; import android.content.pm.ShortcutInfo; import android.os.Build; +import android.os.UserHandle; import com.android.launcher3.ItemInfo; import com.android.launcher3.compat.DeferredLauncherActivityInfo; import com.android.launcher3.compat.LauncherActivityInfoCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; /** @@ -86,8 +86,8 @@ public class ShortcutInfoCompat { return mShortcutInfo.getActivity(); } - public UserHandleCompat getUserHandle() { - return UserHandleCompat.fromUser(mShortcutInfo.getUserHandle()); + public UserHandle getUserHandle() { + return mShortcutInfo.getUserHandle(); } public boolean hasKeyFieldsOnly() { diff --git a/src/com/android/launcher3/shortcuts/ShortcutKey.java b/src/com/android/launcher3/shortcuts/ShortcutKey.java index a219c5494..8f7266632 100644 --- a/src/com/android/launcher3/shortcuts/ShortcutKey.java +++ b/src/com/android/launcher3/shortcuts/ShortcutKey.java @@ -2,9 +2,9 @@ package com.android.launcher3.shortcuts; import android.content.ComponentName; import android.content.Intent; +import android.os.UserHandle; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.ComponentKey; /** @@ -12,7 +12,7 @@ import com.android.launcher3.util.ComponentKey; */ public class ShortcutKey extends ComponentKey { - public ShortcutKey(String packageName, UserHandleCompat user, String id) { + public ShortcutKey(String packageName, UserHandle user, String id) { // Use the id as the class name. super(new ComponentName(packageName, id), user); } @@ -26,7 +26,7 @@ public class ShortcutKey extends ComponentKey { shortcutInfo.getId()); } - public static ShortcutKey fromIntent(Intent intent, UserHandleCompat user) { + public static ShortcutKey fromIntent(Intent intent, UserHandle user) { String shortcutId = intent.getStringExtra( ShortcutInfoCompat.EXTRA_SHORTCUT_ID); return new ShortcutKey(intent.getPackage(), user, shortcutId); diff --git a/src/com/android/launcher3/util/CachedPackageTracker.java b/src/com/android/launcher3/util/CachedPackageTracker.java index 293714eb9..ab5f44ff2 100644 --- a/src/com/android/launcher3/util/CachedPackageTracker.java +++ b/src/com/android/launcher3/util/CachedPackageTracker.java @@ -18,12 +18,12 @@ package com.android.launcher3.util; import android.content.Context; import android.content.SharedPreferences; +import android.os.UserHandle; import com.android.launcher3.Utilities; import com.android.launcher3.compat.LauncherActivityInfoCompat; import com.android.launcher3.compat.LauncherAppsCompat; import com.android.launcher3.compat.LauncherAppsCompat.OnAppsChangedCallbackCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import java.util.ArrayList; @@ -55,7 +55,7 @@ public abstract class CachedPackageTracker implements OnAppsChangedCallbackCompa * Checks the list of user apps, and generates package event accordingly. * {@see #onLauncherAppsAdded}, {@see #onLauncherPackageRemoved} */ - public void processUserApps(List<LauncherActivityInfoCompat> apps, UserHandleCompat user) { + public void processUserApps(List<LauncherActivityInfoCompat> apps, UserHandle user) { String prefKey = INSTALLED_PACKAGES_PREFIX + mUserManager.getSerialNumberForUser(user); HashSet<String> oldPackageSet = new HashSet<>(); final boolean userAppsExisted = getUserApps(oldPackageSet, prefKey); @@ -107,7 +107,7 @@ public abstract class CachedPackageTracker implements OnAppsChangedCallbackCompa } @Override - public void onPackageRemoved(String packageName, UserHandleCompat user) { + public void onPackageRemoved(String packageName, UserHandle user) { String prefKey = INSTALLED_PACKAGES_PREFIX + mUserManager.getSerialNumberForUser(user); HashSet<String> packageSet = new HashSet<>(); if (getUserApps(packageSet, prefKey) && packageSet.remove(packageName)) { @@ -118,7 +118,7 @@ public abstract class CachedPackageTracker implements OnAppsChangedCallbackCompa } @Override - public void onPackageAdded(String packageName, UserHandleCompat user) { + public void onPackageAdded(String packageName, UserHandle user) { String prefKey = INSTALLED_PACKAGES_PREFIX + mUserManager.getSerialNumberForUser(user); HashSet<String> packageSet = new HashSet<>(); final boolean userAppsExisted = getUserApps(packageSet, prefKey); @@ -138,21 +138,21 @@ public abstract class CachedPackageTracker implements OnAppsChangedCallbackCompa } @Override - public void onPackageChanged(String packageName, UserHandleCompat user) { } + public void onPackageChanged(String packageName, UserHandle user) { } @Override public void onPackagesAvailable( - String[] packageNames, UserHandleCompat user, boolean replacing) { } + String[] packageNames, UserHandle user, boolean replacing) { } @Override public void onPackagesUnavailable( - String[] packageNames, UserHandleCompat user, boolean replacing) { } + String[] packageNames, UserHandle user, boolean replacing) { } @Override - public void onPackagesSuspended(String[] packageNames, UserHandleCompat user) { } + public void onPackagesSuspended(String[] packageNames, UserHandle user) { } @Override - public void onPackagesUnsuspended(String[] packageNames, UserHandleCompat user) { } + public void onPackagesUnsuspended(String[] packageNames, UserHandle user) { } /** * Called when new launcher apps are added. @@ -163,12 +163,12 @@ public abstract class CachedPackageTracker implements OnAppsChangedCallbackCompa * when Launcher was newly installed or a new user was added. */ protected abstract void onLauncherAppsAdded(List<LauncherActivityInstallInfo> apps, - UserHandleCompat user, boolean userAppsExisted); + UserHandle user, boolean userAppsExisted); /** * Called when apps are removed from the system. */ - protected abstract void onLauncherPackageRemoved(String packageName, UserHandleCompat user); + protected abstract void onLauncherPackageRemoved(String packageName, UserHandle user); public static class LauncherActivityInstallInfo implements Comparable<LauncherActivityInstallInfo> { diff --git a/src/com/android/launcher3/util/ComponentKey.java b/src/com/android/launcher3/util/ComponentKey.java index 5882f217d..242df2eb5 100644 --- a/src/com/android/launcher3/util/ComponentKey.java +++ b/src/com/android/launcher3/util/ComponentKey.java @@ -18,8 +18,9 @@ package com.android.launcher3.util; import android.content.ComponentName; import android.content.Context; +import android.os.Process; +import android.os.UserHandle; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import java.util.Arrays; @@ -27,11 +28,11 @@ import java.util.Arrays; public class ComponentKey { public final ComponentName componentName; - public final UserHandleCompat user; + public final UserHandle user; private final int mHashCode; - public ComponentKey(ComponentName componentName, UserHandleCompat user) { + public ComponentKey(ComponentName componentName, UserHandle user) { Preconditions.assertNotNull(componentName); Preconditions.assertNotNull(user); this.componentName = componentName; @@ -56,7 +57,7 @@ public class ComponentKey { } else { // No user provided, default to the current user componentName = ComponentName.unflattenFromString(componentKeyStr); - user = UserHandleCompat.myUserHandle(); + user = Process.myUserHandle(); } Preconditions.assertNotNull(componentName); Preconditions.assertNotNull(user); diff --git a/src/com/android/launcher3/util/ContentWriter.java b/src/com/android/launcher3/util/ContentWriter.java index 33d979c18..1c347c0a4 100644 --- a/src/com/android/launcher3/util/ContentWriter.java +++ b/src/com/android/launcher3/util/ContentWriter.java @@ -20,11 +20,11 @@ import android.content.ContentValues; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; +import android.os.UserHandle; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherSettings; import com.android.launcher3.Utilities; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; /** @@ -36,7 +36,7 @@ public class ContentWriter { private final Context mContext; private Bitmap mIcon; - private UserHandleCompat mUser; + private UserHandle mUser; public ContentWriter(Context context) { this(new ContentValues(), context); @@ -72,13 +72,13 @@ public class ContentWriter { return this; } - public ContentWriter putIcon(Bitmap value, UserHandleCompat user) { + public ContentWriter putIcon(Bitmap value, UserHandle user) { mIcon = value; mUser = user; return this; } - public ContentWriter put(String key, UserHandleCompat user) { + public ContentWriter put(String key, UserHandle user) { return put(key, UserManagerCompat.getInstance(mContext).getSerialNumberForUser(user)); } diff --git a/src/com/android/launcher3/util/ItemInfoMatcher.java b/src/com/android/launcher3/util/ItemInfoMatcher.java index 8f985c344..b6e0e6e29 100644 --- a/src/com/android/launcher3/util/ItemInfoMatcher.java +++ b/src/com/android/launcher3/util/ItemInfoMatcher.java @@ -17,13 +17,13 @@ package com.android.launcher3.util; import android.content.ComponentName; +import android.os.UserHandle; import com.android.launcher3.FolderInfo; import com.android.launcher3.ItemInfo; import com.android.launcher3.LauncherAppWidgetInfo; import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.ShortcutInfo; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.shortcuts.ShortcutKey; import java.util.HashSet; @@ -66,7 +66,7 @@ public abstract class ItemInfoMatcher { return filtered; } - public static ItemInfoMatcher ofUser(final UserHandleCompat user) { + public static ItemInfoMatcher ofUser(final UserHandle user) { return new ItemInfoMatcher() { @Override public boolean matches(ItemInfo info, ComponentName cn) { @@ -76,7 +76,7 @@ public abstract class ItemInfoMatcher { } public static ItemInfoMatcher ofComponents( - final HashSet<ComponentName> components, final UserHandleCompat user) { + final HashSet<ComponentName> components, final UserHandle user) { return new ItemInfoMatcher() { @Override public boolean matches(ItemInfo info, ComponentName cn) { @@ -86,7 +86,7 @@ public abstract class ItemInfoMatcher { } public static ItemInfoMatcher ofPackages( - final HashSet<String> packageNames, final UserHandleCompat user) { + final HashSet<String> packageNames, final UserHandle user) { return new ItemInfoMatcher() { @Override public boolean matches(ItemInfo info, ComponentName cn) { diff --git a/src/com/android/launcher3/util/ManagedProfileHeuristic.java b/src/com/android/launcher3/util/ManagedProfileHeuristic.java index 6b4021f31..2d9e368d4 100644 --- a/src/com/android/launcher3/util/ManagedProfileHeuristic.java +++ b/src/com/android/launcher3/util/ManagedProfileHeuristic.java @@ -18,6 +18,8 @@ package com.android.launcher3.util; import android.content.Context; import android.content.SharedPreferences; +import android.os.Process; +import android.os.UserHandle; import com.android.launcher3.AppInfo; import com.android.launcher3.FolderInfo; @@ -31,9 +33,8 @@ import com.android.launcher3.R; import com.android.launcher3.ShortcutInfo; import com.android.launcher3.Utilities; import com.android.launcher3.compat.LauncherActivityInfoCompat; -import com.android.launcher3.shortcuts.ShortcutInfoCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; +import com.android.launcher3.shortcuts.ShortcutInfoCompat; import java.util.ArrayList; import java.util.HashSet; @@ -57,8 +58,8 @@ public class ManagedProfileHeuristic { */ private static final long AUTO_ADD_TO_FOLDER_DURATION = 8 * 60 * 60 * 1000; - public static ManagedProfileHeuristic get(Context context, UserHandleCompat user) { - if (Utilities.ATLEAST_LOLLIPOP && !UserHandleCompat.myUserHandle().equals(user)) { + public static ManagedProfileHeuristic get(Context context, UserHandle user) { + if (!Process.myUserHandle().equals(user)) { return new ManagedProfileHeuristic(context, user); } return null; @@ -66,10 +67,10 @@ public class ManagedProfileHeuristic { private final Context mContext; private final LauncherModel mModel; - private final UserHandleCompat mUser; + private final UserHandle mUser; private final IconCache mIconCache; - private ManagedProfileHeuristic(Context context, UserHandleCompat user) { + private ManagedProfileHeuristic(Context context, UserHandle user) { mContext = context; mUser = user; mModel = LauncherAppState.getInstance().getModel(); @@ -104,7 +105,7 @@ public class ManagedProfileHeuristic { } protected void onLauncherAppsAdded( - List<LauncherActivityInstallInfo> apps, UserHandleCompat user, boolean userAppsExisted) { + List<LauncherActivityInstallInfo> apps, UserHandle user, boolean userAppsExisted) { ArrayList<ShortcutInfo> workFolderApps = new ArrayList<>(); ArrayList<ShortcutInfo> homescreenApps = new ArrayList<>(); @@ -132,14 +133,14 @@ public class ManagedProfileHeuristic { } @Override - protected void onLauncherPackageRemoved(String packageName, UserHandleCompat user) { + protected void onLauncherPackageRemoved(String packageName, UserHandle user) { } /** * Adds and binds shortcuts marked to be added to the work folder. */ private void finalizeWorkFolder( - UserHandleCompat user, final ArrayList<ShortcutInfo> workFolderApps, + UserHandle user, final ArrayList<ShortcutInfo> workFolderApps, ArrayList<ShortcutInfo> homescreenApps) { if (workFolderApps.isEmpty()) { return; @@ -190,7 +191,7 @@ public class ManagedProfileHeuristic { @Override public void onShortcutsChanged(String packageName, List<ShortcutInfoCompat> shortcuts, - UserHandleCompat user) { + UserHandle user) { // Do nothing } } @@ -209,13 +210,13 @@ public class ManagedProfileHeuristic { /** * Verifies that entries corresponding to {@param users} exist and removes all invalid entries. */ - public static void processAllUsers(List<UserHandleCompat> users, Context context) { + public static void processAllUsers(List<UserHandle> users, Context context) { if (!Utilities.ATLEAST_LOLLIPOP) { return; } UserManagerCompat userManager = UserManagerCompat.getInstance(context); HashSet<String> validKeys = new HashSet<String>(); - for (UserHandleCompat user : users) { + for (UserHandle user : users) { addAllUserKeys(userManager.getSerialNumberForUser(user), validKeys); } @@ -242,10 +243,10 @@ public class ManagedProfileHeuristic { */ public static void markExistingUsersForNoFolderCreation(Context context) { UserManagerCompat userManager = UserManagerCompat.getInstance(context); - UserHandleCompat myUser = UserHandleCompat.myUserHandle(); + UserHandle myUser = Process.myUserHandle(); SharedPreferences prefs = null; - for (UserHandleCompat user : userManager.getUserProfiles()) { + for (UserHandle user : userManager.getUserProfiles()) { if (myUser.equals(user)) { continue; } diff --git a/src/com/android/launcher3/widget/WidgetItemComparator.java b/src/com/android/launcher3/widget/WidgetItemComparator.java index b5aaeb9fe..ee23cfbb1 100644 --- a/src/com/android/launcher3/widget/WidgetItemComparator.java +++ b/src/com/android/launcher3/widget/WidgetItemComparator.java @@ -15,7 +15,9 @@ */ package com.android.launcher3.widget; -import com.android.launcher3.compat.UserHandleCompat; +import android.os.Process; +import android.os.UserHandle; + import com.android.launcher3.model.WidgetItem; import java.text.Collator; @@ -26,7 +28,7 @@ import java.util.Comparator; */ public class WidgetItemComparator implements Comparator<WidgetItem> { - private final UserHandleCompat mMyUserHandle = UserHandleCompat.myUserHandle(); + private final UserHandle mMyUserHandle = Process.myUserHandle(); private final Collator mCollator = Collator.getInstance(); @Override |