mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-03 01:16:49 +00:00
Fix app crash on deep shortcut restore
Although the recovery logic for app shortcuts and deep shortcuts are mostly the same, in deepshortcut's case we don't care about the component name. This CL fixes the bug where we reset the intent if the activity a deepshortcut points to is not found. resetting the intent is problematic as we'll need the shortcut id (which is stored as an extra on the intent) to recover the deep shortcut using pinned shortcuts. Bug: 140819317 Change-Id: I22f0266b98a9f6175303cc92a85397e240443250
This commit is contained in:
@@ -19,7 +19,6 @@ package com.android.launcher3.model;
|
||||
import static com.android.launcher3.ItemInfoWithIcon.FLAG_DISABLED_LOCKED_USER;
|
||||
import static com.android.launcher3.ItemInfoWithIcon.FLAG_DISABLED_SAFEMODE;
|
||||
import static com.android.launcher3.ItemInfoWithIcon.FLAG_DISABLED_SUSPENDED;
|
||||
import static com.android.launcher3.compat.PackageInstallerCompat.getUserHandle;
|
||||
import static com.android.launcher3.model.LoaderResults.filterCurrentWorkspaceItems;
|
||||
import static com.android.launcher3.util.Executors.MODEL_EXECUTOR;
|
||||
import static com.android.launcher3.util.PackageManagerHelper.isSystemApp;
|
||||
@@ -401,7 +400,9 @@ public class LoaderTask implements Runnable {
|
||||
boolean validTarget = TextUtils.isEmpty(targetPkg) ||
|
||||
mLauncherApps.isPackageEnabledForProfile(targetPkg, c.user);
|
||||
|
||||
if (cn != null && validTarget) {
|
||||
// If it's a deep shortcut, we'll use pinned shortcuts to restore it
|
||||
if (cn != null && validTarget && c.itemType
|
||||
!= LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT) {
|
||||
// If the apk is present and the shortcut points to a specific
|
||||
// component.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user