Make smooth transition between Search fragment and the others

- use TransitionManager.beginDelayedTransition() and
getFragmentManager().executePendingTransactions()

Change-Id: I5d583916afb8b87dfe2b17b4e685ef5384c5fbd2
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index f2d4026..f7e5dcd 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -51,6 +51,7 @@
 import android.preference.PreferenceManager;
 import android.preference.PreferenceScreen;
 import android.text.TextUtils;
+import android.transition.TransitionManager;
 import android.util.AttributeSet;
 import android.util.Log;
 import android.util.TypedValue;
@@ -60,6 +61,7 @@
 import android.view.MenuItem;
 import android.view.View;
 import android.view.View.OnClickListener;
+import android.view.ViewGroup;
 import android.widget.Button;
 
 import android.widget.SearchView;
@@ -309,6 +311,8 @@
 
     private boolean mIsShowingDashboard;
 
+    private ViewGroup mContent;
+
     private SearchView mSearchView;
     private MenuItem mSearchMenuItem;
     private boolean mSearchMenuItemExpanded = false;
@@ -444,6 +448,8 @@
 
         setContentView(R.layout.settings_main);
 
+        mContent = (ViewGroup) findViewById(R.id.prefs);
+
         getFragmentManager().addOnBackStackChangedListener(this);
 
         mDisplayHomeAsUpEnabled = true;
@@ -794,7 +800,7 @@
         FragmentTransaction transaction = getFragmentManager().beginTransaction();
         transaction.replace(R.id.prefs, f);
         if (withTransition) {
-            transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+            TransitionManager.beginDelayedTransition(mContent);
         }
         if (addToBackStack) {
             transaction.addToBackStack(SettingsActivity.BACK_STACK_PREFS);
@@ -803,6 +809,7 @@
             transaction.setBreadCrumbTitle(title);
         }
         transaction.commitAllowingStateLoss();
+        getFragmentManager().executePendingTransactions();
         return f;
     }
 
@@ -1249,12 +1256,10 @@
         if (current != null && current instanceof SearchResultsSummary) {
             mSearchResultsFragment = (SearchResultsSummary) current;
         } else {
-            final boolean isShowingSwitchBar =
-                    (mSwitchBar != null) ? mSwitchBar.isShowing() : false;
             String title = getString(R.string.search_results_title);
             mSearchResultsFragment = (SearchResultsSummary) switchToFragment(
                     SearchResultsSummary.class.getName(), null, false, true, title,
-                    !isShowingSwitchBar);
+                    true);
         }
         mSearchResultsFragment.setSearchView(mSearchView);
         mSearchMenuItemExpanded = true;