diff --git a/src/com/android/browser/BreadCrumbView.java b/src/com/android/browser/BreadCrumbView.java
index f6bee4a..0cd8226 100644
--- a/src/com/android/browser/BreadCrumbView.java
+++ b/src/com/android/browser/BreadCrumbView.java
@@ -397,7 +397,7 @@
 
         private TextView makeCrumbView(String name) {
             TextView tv = new TextView(mContext);
-            tv.setTextAppearance(mContext, android.R.style.TextAppearance_Medium);
+            tv.setTextAppearance(mContext, R.style.BookmarkText);
             tv.setPadding(mCrumbPadding, 0, mCrumbPadding, 0);
             tv.setGravity(Gravity.CENTER_VERTICAL);
             tv.setText(name);
diff --git a/src/com/android/browser/view/BookmarkExpandableView.java b/src/com/android/browser/view/BookmarkExpandableView.java
index db19c33..5e68565 100644
--- a/src/com/android/browser/view/BookmarkExpandableView.java
+++ b/src/com/android/browser/view/BookmarkExpandableView.java
@@ -403,16 +403,6 @@
             if (view == null) {
                 view = mInflater.inflate(R.layout.bookmark_group_view, parent, false);
                 view.setOnClickListener(mGroupOnClickListener);
-                if (getGroupCount() == 1 && isExpanded) {
-                    // Hide the group view if we have only one group in this expandable list.
-                    ViewGroup.LayoutParams lp = view.getLayoutParams();
-                    lp.height = 0;
-                    view.setLayoutParams(lp);
-                    view.setVisibility(View.INVISIBLE);
-                    if (parent instanceof ExpandableListView) {
-                        ((ExpandableListView) parent).setGroupIndicator(null);
-                    }
-                }
             }
             view.setTag(R.id.group_position, groupPosition);
             FrameLayout crumbHolder = (FrameLayout) view.findViewById(R.id.crumb_holder);
