Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 59a4055c authored by Fabrice Di Meglio's avatar Fabrice Di Meglio
Browse files

Make smooth transition between Search fragment and the others

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

Change-Id: I5d583916afb8b87dfe2b17b4e685ef5384c5fbd2
parent 7e4855e8
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ import android.preference.PreferenceFragment;
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.MenuInflater;
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 @@ public class SettingsActivity extends Activity

    private boolean mIsShowingDashboard;

    private ViewGroup mContent;

    private SearchView mSearchView;
    private MenuItem mSearchMenuItem;
    private boolean mSearchMenuItemExpanded = false;
@@ -444,6 +448,8 @@ public class SettingsActivity extends Activity

        setContentView(R.layout.settings_main);

        mContent = (ViewGroup) findViewById(R.id.prefs);

        getFragmentManager().addOnBackStackChangedListener(this);

        mDisplayHomeAsUpEnabled = true;
@@ -794,7 +800,7 @@ public class SettingsActivity extends Activity
        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 @@ public class SettingsActivity extends Activity
            transaction.setBreadCrumbTitle(title);
        }
        transaction.commitAllowingStateLoss();
        getFragmentManager().executePendingTransactions();
        return f;
    }

@@ -1249,12 +1256,10 @@ public class SettingsActivity extends Activity
        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;