From f21c3dace89b168f5e5e4e96532d977b8b0a1cf5 Mon Sep 17 00:00:00 2001 From: Winson Date: Wed, 13 Apr 2016 18:24:12 -0700 Subject: [PATCH] Fixing crash. b/28179361 Change-Id: I5c6049efcd0c43f3b0e595648fd331c2a82d4d73 --- .../src/com/android/systemui/recents/model/Task.java | 9 +++++++++ .../com/android/systemui/recents/views/RecentsView.java | 2 +- .../systemui/recents/views/RecentsViewTouchHandler.java | 3 ++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/recents/model/Task.java b/packages/SystemUI/src/com/android/systemui/recents/model/Task.java index 9f9c48fcff3b0..68c46a9109543 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/model/Task.java +++ b/packages/SystemUI/src/com/android/systemui/recents/model/Task.java @@ -315,6 +315,15 @@ public class Task { return key.id != affiliationTaskId; } + /** + * Returns the top activity component. + */ + public ComponentName getTopComponent() { + return topActivity != null + ? topActivity + : key.baseIntent.getComponent(); + } + @Override public boolean equals(Object o) { // Check that the id matches diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java index 59b7560255c5f..86d68c2b7e9fb 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java +++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java @@ -541,7 +541,7 @@ public class RecentsView extends FrameLayout { true /* scaleUp */); MetricsLogger.action(mContext, MetricsEvent.ACTION_WINDOW_DOCK_DRAG_DROP, - event.task.topActivity.flattenToShortString()); + event.task.getTopComponent().flattenToShortString()); } else { // Animate the overlay alpha back to 0 updateVisibleDockRegions(null, true /* isDefaultDockState */, -1, diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java index 5fbc0374c7896..70c4dbdc96653 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java +++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java @@ -162,7 +162,8 @@ public class RecentsViewTouchHandler { mVisibleDockStates.clear(); if (ActivityManager.supportsMultiWindow() && !ssp.hasDockedTask() && mDividerSnapAlgorithm.isSplitScreenFeasible()) { - Recents.logDockAttempt(mRv.getContext(), event.task.topActivity, event.task.resizeMode); + Recents.logDockAttempt(mRv.getContext(), event.task.getTopComponent(), + event.task.resizeMode); if (!event.task.isDockable) { EventBus.getDefault().send(new ShowIncompatibleAppOverlayEvent()); } else {