From f831a3bf4e43c76e12da4e3a8963ea00f7d75888 Mon Sep 17 00:00:00 2001 From: Pun Butrach Date: Fri, 5 Dec 2025 22:51:06 +0700 Subject: [PATCH] fix: Ignore generatedPreviews flags on Vanilla Ice Cream and above This is always enabled on correct AOSP implementations, crashes should be handled by OEM --- src/com/android/launcher3/model/WidgetItem.java | 4 ++-- src/com/android/launcher3/widget/WidgetCell.java | 3 ++- src/com/android/launcher3/widget/WidgetManagerHelper.java | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/com/android/launcher3/model/WidgetItem.java b/src/com/android/launcher3/model/WidgetItem.java index 1536e47434..846bf7fd74 100644 --- a/src/com/android/launcher3/model/WidgetItem.java +++ b/src/com/android/launcher3/model/WidgetItem.java @@ -55,7 +55,7 @@ public class WidgetItem extends ComponentKey { spanX = Math.min(info.spanX, idp.numColumns); spanY = Math.min(info.spanY, idp.numRows); - if (BuildCompat.isAtLeastV() && Flags.enableGeneratedPreviews()) { + if (BuildCompat.isAtLeastV()) { generatedPreviews = new SparseArray<>(3); for (int widgetCategory : new int[] { WIDGET_CATEGORY_HOME_SCREEN, @@ -120,7 +120,7 @@ public class WidgetItem extends ComponentKey { * category. */ public boolean hasGeneratedPreview(int widgetCategory) { - if (!Flags.enableGeneratedPreviews() || generatedPreviews == null) { + if (!Utilities.ATLEAST_V || generatedPreviews == null) { return false; } return generatedPreviews.contains(widgetCategory) diff --git a/src/com/android/launcher3/widget/WidgetCell.java b/src/com/android/launcher3/widget/WidgetCell.java index b0d0761bff..e3152cdc95 100644 --- a/src/com/android/launcher3/widget/WidgetCell.java +++ b/src/com/android/launcher3/widget/WidgetCell.java @@ -56,6 +56,7 @@ import com.android.launcher3.Flags; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherAppState; import com.android.launcher3.R; +import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatedPropertySetter; import com.android.launcher3.icons.FastBitmapDrawable; import com.android.launcher3.icons.RoundDrawableWrapper; @@ -292,7 +293,7 @@ public class WidgetCell extends LinearLayout { mAppWidgetHostViewPreview = createAppWidgetHostView(context); setAppWidgetHostViewPreview(mAppWidgetHostViewPreview, item.widgetInfo, mRemoteViewsPreview); - } else if (Flags.enableGeneratedPreviews() + } else if (Utilities.ATLEAST_V && item.hasGeneratedPreview(WIDGET_CATEGORY_HOME_SCREEN)) { mAppWidgetHostViewPreview = createAppWidgetHostView(context); setAppWidgetHostViewPreview(mAppWidgetHostViewPreview, item.widgetInfo, diff --git a/src/com/android/launcher3/widget/WidgetManagerHelper.java b/src/com/android/launcher3/widget/WidgetManagerHelper.java index aaed5a03e0..4db376bc51 100644 --- a/src/com/android/launcher3/widget/WidgetManagerHelper.java +++ b/src/com/android/launcher3/widget/WidgetManagerHelper.java @@ -33,6 +33,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; +import com.android.launcher3.Utilities; import com.android.launcher3.logging.FileLog; import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.pm.UserCache; @@ -162,7 +163,6 @@ public class WidgetManagerHelper { @RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM) public RemoteViews loadGeneratedPreview(@NonNull AppWidgetProviderInfo info, int widgetCategory) { - if (!Flags.generatedPreviews()) return null; return mAppWidgetManager.getWidgetPreview(info.provider, info.getProfile(), widgetCategory); }