Refactoring Recents layout into an xml.

- Hiding the search bar when entering filtering mode

Change-Id: Ifce8429d6f331406e9688c96cd978f6900879c96
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 d06c9d2..8afc5b9 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
@@ -28,6 +28,7 @@
 import android.net.Uri;
 import android.os.UserHandle;
 import android.provider.Settings;
+import android.util.AttributeSet;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.WindowInsets;
@@ -44,7 +45,6 @@
 import java.util.ArrayList;
 import java.util.Set;
 
-
 /**
  * This view is the the top level layout that contains TaskStacks (which are laid out according
  * to their SpaceNode bounds.
@@ -72,6 +72,18 @@
 
     public RecentsView(Context context) {
         super(context);
+    }
+
+    public RecentsView(Context context, AttributeSet attrs) {
+        this(context, attrs, 0);
+    }
+
+    public RecentsView(Context context, AttributeSet attrs, int defStyleAttr) {
+        this(context, attrs, defStyleAttr, 0);
+    }
+
+    public RecentsView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
+        super(context, attrs, defStyleAttr, defStyleRes);
         mConfig = RecentsConfiguration.getInstance();
         mInflater = LayoutInflater.from(context);
     }
@@ -509,6 +521,34 @@
                 isDocument);
     }
 
+    @Override
+    public void onTaskStackFilterTriggered() {
+        // Hide the search bar
+        if (mSearchBar != null) {
+            mSearchBar.animate()
+                    .alpha(0f)
+                    .setStartDelay(0)
+                    .setInterpolator(mConfig.fastOutSlowInInterpolator)
+                    .setDuration(mConfig.filteringCurrentViewsAnimDuration)
+                    .withLayer()
+                    .start();
+        }
+    }
+
+    @Override
+    public void onTaskStackUnfilterTriggered() {
+        // Show the search bar
+        if (mSearchBar != null) {
+            mSearchBar.animate()
+                    .alpha(1f)
+                    .setStartDelay(0)
+                    .setInterpolator(mConfig.fastOutSlowInInterpolator)
+                    .setDuration(mConfig.filteringNewViewsAnimDuration)
+                    .withLayer()
+                    .start();
+        }
+    }
+
     /**** RecentsPackageMonitor.PackageCallbacks Implementation ****/
 
     @Override