Reset state after split launch animation finishes

Previously we were clearing SplitSelectStateController
state too soon for fake landscape case where
as soon as the tasks launch the device does a rotation
animation since the new split tasks are in landscape.
Move restting state after animation finishes.

Fixes: 201980666

Change-Id: I23efd59fad444c47ae6c2048888a8570f22610fd
diff --git a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java
index e9a695d..1dae2c8 100644
--- a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java
+++ b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java
@@ -163,10 +163,8 @@
                                 if (mSuccessCallback != null) {
                                     mSuccessCallback.accept(true);
                                 }
+                                resetState();
                             }));
-
-            // After successful launch, call resetState
-            resetState();
         }
 
         @Override
@@ -175,9 +173,8 @@
                 if (mSuccessCallback != null) {
                     mSuccessCallback.accept(false);
                 }
+                resetState();
             });
-
-            resetState();
         }
     }
 
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
index e1a3895..e9c669b 100644
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
@@ -3918,7 +3918,6 @@
 
     /** TODO(b/181707736) More gracefully handle exiting split selection state */
     private void resetFromSplitSelectionState() {
-        mSplitHiddenTaskView.setTranslationY(0);
         if (!showAsGrid()) {
             int pageToSnapTo = mCurrentPage;
             if (mSplitHiddenTaskViewIndex <= pageToSnapTo) {
@@ -3930,9 +3929,12 @@
         }
         onLayout(false /*  changed */, getLeft(), getTop(), getRight(), getBottom());
         resetTaskVisuals();
-        mSplitHiddenTaskView.setVisibility(VISIBLE);
-        mSplitHiddenTaskView = null;
         mSplitHiddenTaskViewIndex = -1;
+        if (mSplitHiddenTaskView != null) {
+            mSplitHiddenTaskView.setTranslationY(0);
+            mSplitHiddenTaskView.setVisibility(VISIBLE);
+            mSplitHiddenTaskView = null;
+        }
         if (mFirstFloatingTaskView != null) {
             mActivity.getRootView().removeView(mFirstFloatingTaskView);
             mFirstFloatingTaskView = null;