Merge "Fixing legacy shortcuts which only specify packageName in the intent dont get restored on apk install." into ub-launcher3-dorval-polish
This commit is contained in:
commit
155384dad8
|
@ -68,7 +68,7 @@ public class IconCache {
|
|||
private static final int INITIAL_ICON_CACHE_CAPACITY = 50;
|
||||
|
||||
// Empty class name is used for storing package default entry.
|
||||
private static final String EMPTY_CLASS_NAME = ".";
|
||||
public static final String EMPTY_CLASS_NAME = ".";
|
||||
|
||||
private static final boolean DEBUG = false;
|
||||
private static final boolean DEBUG_IGNORE_CACHE = false;
|
||||
|
|
|
@ -137,7 +137,18 @@ public class ItemInfo {
|
|||
}
|
||||
|
||||
public ComponentName getTargetComponent() {
|
||||
return getIntent() == null ? null : getIntent().getComponent();
|
||||
Intent intent = getIntent();
|
||||
if (intent == null) {
|
||||
return null;
|
||||
}
|
||||
ComponentName cn = intent.getComponent();
|
||||
if (itemType == LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT && cn == null) {
|
||||
// Legacy shortcuts may not have a componentName but just a packageName. In that case
|
||||
// create a dummy componentName instead of adding additional check everywhere.
|
||||
String pkg = intent.getPackage();
|
||||
return pkg == null ? null : new ComponentName(pkg, IconCache.EMPTY_CLASS_NAME);
|
||||
}
|
||||
return cn;
|
||||
}
|
||||
|
||||
public void writeToValues(ContentWriter writer) {
|
||||
|
|
Loading…
Reference in New Issue