Fix ViewTreeObserver crash on Recents Go

The view tree we originally attach the onGlobalLayout listener to may no
longer be alive when we get the callback as the view tree observer
merges when the view attaches to a view hierarchy, giving us an
exception. Instead, we should request the view tree observer again and
remove it from there.

Bug: 130740246
Fix: 130740246
Test: Manual test, no longer crashes
Change-Id: Idb982022e72db75b8e20fd5bea00655212dc0258
diff --git a/go/quickstep/src/com/android/quickstep/views/IconRecentsView.java b/go/quickstep/src/com/android/quickstep/views/IconRecentsView.java
index 8661402..9688fdf 100644
--- a/go/quickstep/src/com/android/quickstep/views/IconRecentsView.java
+++ b/go/quickstep/src/com/android/quickstep/views/IconRecentsView.java
@@ -417,13 +417,12 @@
      * manage when the animation conflicts with another animation.
      */
     private void scheduleFadeInLayoutAnimation() {
-        ViewTreeObserver viewTreeObserver = mTaskRecyclerView.getViewTreeObserver();
-        viewTreeObserver.addOnGlobalLayoutListener(
+        mTaskRecyclerView.getViewTreeObserver().addOnGlobalLayoutListener(
                 new ViewTreeObserver.OnGlobalLayoutListener() {
                     @Override
                     public void onGlobalLayout() {
                         animateFadeInLayoutAnimation();
-                        viewTreeObserver.removeOnGlobalLayoutListener(this);
+                        mTaskRecyclerView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
                     }
                 });
     }