diff options
Diffstat (limited to 'src/com/android/launcher3/model/GridSizeMigrationTask.java')
-rw-r--r-- | src/com/android/launcher3/model/GridSizeMigrationTask.java | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/com/android/launcher3/model/GridSizeMigrationTask.java b/src/com/android/launcher3/model/GridSizeMigrationTask.java index 19ec3ed64..931466c3b 100644 --- a/src/com/android/launcher3/model/GridSizeMigrationTask.java +++ b/src/com/android/launcher3/model/GridSizeMigrationTask.java @@ -23,8 +23,8 @@ import com.android.launcher3.LauncherSettings; import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.Utilities; import com.android.launcher3.backup.nano.BackupProtos; +import com.android.launcher3.compat.AppWidgetManagerCompat; import com.android.launcher3.compat.PackageInstallerCompat; -import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.LongArrayMap; import java.util.ArrayList; @@ -696,7 +696,8 @@ public class GridSizeMigrationTask { Favorites.SPANX, // 4 Favorites.SPANY, // 5 Favorites.INTENT, // 6 - Favorites.APPWIDGET_PROVIDER}, // 7 + Favorites.APPWIDGET_PROVIDER, // 7 + Favorites.APPWIDGET_ID}, // 8 Favorites.CONTAINER + " = " + Favorites.CONTAINER_DESKTOP + " AND " + Favorites.SCREEN + " = " + screen, null, null, null); @@ -708,6 +709,7 @@ public class GridSizeMigrationTask { final int indexSpanY = c.getColumnIndexOrThrow(Favorites.SPANY); final int indexIntent = c.getColumnIndexOrThrow(Favorites.INTENT); final int indexAppWidgetProvider = c.getColumnIndexOrThrow(Favorites.APPWIDGET_PROVIDER); + final int indexAppWidgetId = c.getColumnIndexOrThrow(Favorites.APPWIDGET_ID); ArrayList<DbEntry> entries = new ArrayList<>(); while (c.moveToNext()) { @@ -737,9 +739,9 @@ public class GridSizeMigrationTask { entry.weight = Math.max(WT_WIDGET_MIN, WT_WIDGET_FACTOR * entry.spanX * entry.spanY); - // Migration happens for current user only. - LauncherAppWidgetProviderInfo pInfo = LauncherModel.getProviderInfo( - mContext, cn, UserHandleCompat.myUserHandle()); + int widgetId = c.getInt(indexAppWidgetId); + LauncherAppWidgetProviderInfo pInfo = AppWidgetManagerCompat.getInstance( + mContext).getLauncherAppWidgetInfo(widgetId); Point spans = pInfo == null ? mWidgetMinSize.get(provider) : pInfo.getMinSpans(mIdp, mContext); if (spans != null) { |