From 463a40fdb3cea6f84774fe3dbdfda4b0ee76dc5d Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Sat, 2 Nov 2024 00:36:21 +0000 Subject: [PATCH] Handle null RecentsView in FallbackTaskbarUIController Test: not crashing Flag: com.android.launcher3.enable_fallback_overview_in_window Bug: 365775636 Change-Id: I98c52cc09f1ca686ce3844044bbf734ef0b05e59 --- .../taskbar/FallbackTaskbarUIController.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java index e3bcb0df0d..6a908ca073 100644 --- a/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java @@ -50,8 +50,12 @@ public class FallbackTaskbarUIController public void onStateTransitionStart(RecentsState toState) { animateToRecentsState(toState); + RecentsView recentsView = getRecentsView(); + if (recentsView == null) { + return; + } // Handle tapping on live tile. - getRecentsView().setTaskLaunchListener(toState == RecentsState.DEFAULT + recentsView.setTaskLaunchListener(toState == RecentsState.DEFAULT ? (() -> animateToRecentsState(RecentsState.BACKGROUND_APP)) : null); } @@ -81,7 +85,10 @@ public class FallbackTaskbarUIController @Override protected void onDestroy() { super.onDestroy(); - getRecentsView().setTaskLaunchListener(null); + RecentsView recentsView = getRecentsView(); + if (recentsView != null) { + recentsView.setTaskLaunchListener(null); + } mRecentsContainer.setTaskbarUIController(null); mRecentsContainer.getStateManager().removeStateListener(mStateListener); } @@ -112,7 +119,7 @@ public class FallbackTaskbarUIController } @Override - public RecentsView getRecentsView() { + public @Nullable RecentsView getRecentsView() { return mRecentsContainer.getOverviewPanel(); }