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

Commit 04f8040d authored by Amith Yamasani's avatar Amith Yamasani Committed by Android (Google) Code Review
Browse files

Merge "Make the breadcrumbs touchable for navigation."

parents f88c5941 dcfb9f7a
Loading
Loading
Loading
Loading
+17 −5
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package android.app;

import android.app.FragmentManager.BackStackEntry;
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
@@ -140,7 +141,7 @@ public class FragmentBreadCrumbs extends ViewGroup
        int numEntries = fm.countBackStackEntries();
        int numViews = mContainer.getChildCount();
        for (int i = mTopEntry != null ? -1 : 0; i < numEntries; i++) {
            FragmentManager.BackStackEntry bse = i == -1 ? mTopEntry : fm.getBackStackEntry(i);
            BackStackEntry bse = i == -1 ? mTopEntry : fm.getBackStackEntry(i);
            int viewI = mTopEntry != null ? i + 1 : i;
            if (viewI < numViews) {
                View v = mContainer.getChildAt(viewI);
@@ -163,6 +164,7 @@ public class FragmentBreadCrumbs extends ViewGroup
                    text.setCompoundDrawables(null, null, null, null);
                }
                mContainer.addView(item);
                item.setOnClickListener(mOnClickListener);
            }
        }
        int viewI = mTopEntry != null ? numEntries + 1 : numEntries;
@@ -172,4 +174,14 @@ public class FragmentBreadCrumbs extends ViewGroup
            numViews--;
        }
    }

    private OnClickListener mOnClickListener = new OnClickListener() {
        public void onClick(View v) {
            if (v.getTag() instanceof BackStackEntry) {
                BackStackEntry bse = (BackStackEntry) v.getTag();
                mActivity.getFragmentManager().popBackStack(bse.getId(),
                        bse == mTopEntry? FragmentManager.POP_BACK_STACK_INCLUSIVE : 0);
            }
        }
    };
}