summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java
index 3d2659d54..61d329b25 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java
@@ -117,9 +117,11 @@ public final class LauncherActivityControllerHelper implements ActivityControlHe
workspaceView = null;
}
final Rect iconLocation = new Rect();
- final FloatingIconView floatingView = workspaceView == null ? null
- : FloatingIconView.getFloatingIconView(activity, workspaceView,
- true /* hideOriginal */, iconLocation, false /* isOpening */, null /* recycle */);
+ boolean canUseWorkspaceView = workspaceView != null && workspaceView.isAttachedToWindow();
+ final FloatingIconView floatingView = canUseWorkspaceView
+ ? FloatingIconView.getFloatingIconView(activity, workspaceView,
+ true /* hideOriginal */, iconLocation, false /* isOpening */, null /* recycle */)
+ : null;
return new HomeAnimationFactory() {
@Nullable
@@ -135,7 +137,7 @@ public final class LauncherActivityControllerHelper implements ActivityControlHe
final float targetCenterX = dp.availableWidthPx / 2f;
final float targetCenterY = dp.availableHeightPx - dp.hotseatBarSizePx;
- if (workspaceView != null) {
+ if (canUseWorkspaceView) {
return new RectF(iconLocation);
} else {
// Fallback to animate to center of screen.