Fix isResultLayout()

Bug: 33105525
Bug: 33106867

Also reinitialize the dragController so it can keep up on rotation
or background display changes.

Change-Id: Ic1846bc4495196c35ebd4d4ac78f61078dca7573
diff --git a/src/com/android/calculator2/DragController.java b/src/com/android/calculator2/DragController.java
index 6fb1837..9b40ecc 100644
--- a/src/com/android/calculator2/DragController.java
+++ b/src/com/android/calculator2/DragController.java
@@ -50,25 +50,20 @@
 
     public void setEvaluator(Evaluator evaluator) {
         mEvaluator = evaluator;
-
-        if (evaluator != null) {
-            // Initialize controller
-            if (EvaluatorStateUtils.isDisplayEmpty(mEvaluator)) {
-                // Empty display
-                mAnimationController = new EmptyAnimationController();
-            } else if (isResultState()) {
-                // Result
-                mAnimationController = new ResultAnimationController();
-            } else {
-                // There is something in the formula field. There may or may not be
-                // a quick result.
-                mAnimationController = new AnimationController();
-            }
-        }
     }
 
-    private boolean isResultState() {
-        return mDisplayResult.getTranslationY() != 0;
+    public void initializeController(boolean isResult) {
+        if (EvaluatorStateUtils.isDisplayEmpty(mEvaluator)) {
+            // Empty display
+            mAnimationController = new EmptyAnimationController();
+        } else if (isResult) {
+            // Result
+            mAnimationController = new ResultAnimationController();
+        } else {
+            // There is something in the formula field. There may or may not be
+            // a quick result.
+            mAnimationController = new AnimationController();
+        }
     }
 
     public void setDisplayFormula(CalculatorFormula formula) {
@@ -159,9 +154,10 @@
     /**
      * Reset all initialized values and set recyclerview to INVISIBLE to avoid flickering.
      */
-    public void initializeAnimation(RecyclerView recyclerView) {
+    public void initializeAnimation(RecyclerView recyclerView, boolean isResult) {
         recyclerView.setVisibility(View.INVISIBLE);
         mAnimationInitialized = false;
+        initializeController(isResult);
     }
 
     public interface AnimateTextInterface {