Ensure that the default fullscreen params have a corner radius
- Until we update the fullscreen params, the tmp params have no radius
so in cases where a new task is created while overview is open, or if
we go to overview from home immediately after starting launcher for
the first time, there would be no corners
Bug: 158050383
Test: Kill launcher, swipe up to overview, ensure tasks have corner
radius (if device supports it)
Change-Id: I6b72c1a401b9203da3acffc88578c1ed743c8f68
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskThumbnailView.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskThumbnailView.java
index 3299736..ead0c8b 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskThumbnailView.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskThumbnailView.java
@@ -45,6 +45,7 @@
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.uioverrides.plugins.PluginManagerWrapper;
+import com.android.launcher3.util.MainThreadInitializedObject;
import com.android.launcher3.util.SystemUiController;
import com.android.launcher3.util.Themes;
import com.android.quickstep.TaskOverlayFactory;
@@ -63,9 +64,9 @@
private static final ColorMatrix COLOR_MATRIX = new ColorMatrix();
private static final ColorMatrix SATURATION_COLOR_MATRIX = new ColorMatrix();
- private static final RectF EMPTY_RECT_F = new RectF();
- private static final FullscreenDrawParams TEMP_PARAMS = new FullscreenDrawParams();
+ private static final MainThreadInitializedObject<FullscreenDrawParams> TEMP_PARAMS =
+ new MainThreadInitializedObject<>(FullscreenDrawParams::new);
public static final Property<TaskThumbnailView, Float> DIM_ALPHA =
new FloatProperty<TaskThumbnailView>("dimAlpha") {
@@ -91,8 +92,7 @@
// Contains the portion of the thumbnail that is clipped when fullscreen progress = 0.
private final Rect mPreviewRect = new Rect();
private final PreviewPositionHelper mPreviewPositionHelper = new PreviewPositionHelper();
- // Initialize with dummy value. It is overridden later by TaskView
- private TaskView.FullscreenDrawParams mFullscreenParams = TEMP_PARAMS;
+ private TaskView.FullscreenDrawParams mFullscreenParams;
private Task mTask;
private ThumbnailData mThumbnailData;
@@ -122,6 +122,8 @@
mDimmingPaintAfterClearing.setColor(Color.BLACK);
mActivity = BaseActivity.fromContext(context);
mIsDarkTextTheme = Themes.getAttrBoolean(mActivity, R.attr.isWorkspaceDarkText);
+ // Initialize with dummy value. It is overridden later by TaskView
+ mFullscreenParams = TEMP_PARAMS.get(context);
}
/**
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java
index 429ccf5..cadf6c4 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java
@@ -1018,10 +1018,6 @@
mCurrentDrawnCornerRadius = mCornerRadius;
}
- public FullscreenDrawParams() {
- mCurrentDrawnCornerRadius = mWindowCornerRadius = mCornerRadius = 0;
- }
-
/**
* Sets the progress in range [0, 1]
*/