Merge "Fix widget foreground disappearing when swiping back" into udc-qpr-dev

This commit is contained in:
Sihua Ma
2023-06-14 00:03:34 +00:00
committed by Android (Google) Code Review
2 changed files with 9 additions and 1 deletions
@@ -243,6 +243,7 @@ public final class QuickstepWidgetHolder extends LauncherWidgetHolder {
} else {
widgetView = new LauncherAppWidgetHostView(context);
}
widgetView.setIsWidgetCachingDisabled(true);
widgetView.setInteractionHandler(mInteractionHandler);
widgetView.setAppWidget(appWidgetId, appWidget);
mViews.put(appWidgetId, widgetView);
@@ -95,6 +95,8 @@ public class LauncherAppWidgetHostView extends BaseLauncherAppWidgetHostView
private boolean mTrackingWidgetUpdate = false;
private boolean mIsWidgetCachingDisabled = false;
public LauncherAppWidgetHostView(Context context) {
super(context);
mLauncher = Launcher.getLauncher(context);
@@ -138,6 +140,10 @@ public class LauncherAppWidgetHostView extends BaseLauncherAppWidgetHostView
}
}
public void setIsWidgetCachingDisabled(boolean isWidgetCachingDisabled) {
mIsWidgetCachingDisabled = isWidgetCachingDisabled;
}
@Override
@TargetApi(Build.VERSION_CODES.Q)
public void updateAppWidget(RemoteViews remoteViews) {
@@ -147,7 +153,8 @@ public class LauncherAppWidgetHostView extends BaseLauncherAppWidgetHostView
TRACE_METHOD_NAME + getAppWidgetInfo().provider, getAppWidgetId());
mTrackingWidgetUpdate = false;
}
if (FeatureFlags.ENABLE_CACHED_WIDGET.get()) {
if (FeatureFlags.ENABLE_CACHED_WIDGET.get()
&& !mIsWidgetCachingDisabled) {
mLastRemoteViews = remoteViews;
if (isDeferringUpdates()) {
return;