diff --git a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/BrowserExample01Fragment.java b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/BrowserExample01Fragment.java
deleted file mode 100644
index 1575c85..0000000
--- a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/BrowserExample01Fragment.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
- * in compliance with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-
-package android.support.v17.leanback.supportleanbackshowcase.app;
-
-import android.os.Bundle;
-import android.support.v17.leanback.app.BrowseFragment;
-import android.support.v17.leanback.supportleanbackshowcase.utils.CardListRow;
-import android.support.v17.leanback.supportleanbackshowcase.R;
-import android.support.v17.leanback.supportleanbackshowcase.app.details.ShadowRowPresenterSelector;
-import android.support.v17.leanback.supportleanbackshowcase.utils.Utils;
-import android.support.v17.leanback.supportleanbackshowcase.models.Card;
-import android.support.v17.leanback.supportleanbackshowcase.models.CardRow;
-import android.support.v17.leanback.supportleanbackshowcase.cards.presenters.CardPresenterSelector;
-import android.support.v17.leanback.widget.ArrayObjectAdapter;
-import android.support.v17.leanback.widget.HeaderItem;
-import android.support.v17.leanback.widget.ListRow;
-import android.support.v17.leanback.widget.PresenterSelector;
-import android.support.v17.leanback.widget.SearchOrbView;
-import android.view.View;
-import android.widget.Toast;
-
-import com.google.gson.Gson;
-
-
-public class BrowserExample01Fragment extends BrowseFragment {
-
-    private static final String TAG = "BrowserExample01Fragment";
-
-    private ArrayObjectAdapter mRowsAdapter;
-
-    @Override public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-        setupUi();
-        setupRowAdapter();
-    }
-
-    private void setupUi() {
-        setHeadersState(HEADERS_ENABLED);
-        setHeadersTransitionOnBackEnabled(true);
-        setSearchAffordanceColors(
-                new SearchOrbView.Colors(getResources().getColor(R.color.search_color),
-                                         getResources().getColor(R.color.search_bright_color),
-                                         getResources().getColor(R.color.search_icon_color)));
-        setBrandColor(getResources().getColor(R.color.fastlane_background));
-        setTitle("Browser Example 01");
-        setOnSearchClickedListener(new View.OnClickListener() {
-            @Override public void onClick(View v) {
-                Toast.makeText(getActivity(), getString(R.string.implement_search),
-                               Toast.LENGTH_LONG).show();
-            }
-        });
-    }
-
-    private void setupRowAdapter() {
-        mRowsAdapter = new ArrayObjectAdapter(new ShadowRowPresenterSelector());
-        createRows();
-        setAdapter(mRowsAdapter);
-    }
-
-    private void createRows() {
-        String json = Utils
-                .inputStreamToString(getResources().openRawResource(R.raw.browsing_example_01));
-        CardRow[] rows = new Gson().fromJson(json, CardRow[].class);
-        for (CardRow row : rows) {
-            mRowsAdapter.add(createCardRow(row));
-        }
-    }
-
-    private ListRow createCardRow(final CardRow cardRow) {
-        // Build main row using the ImageCardViewPresenter.
-        PresenterSelector presenterSelector = new CardPresenterSelector(getActivity());
-        ArrayObjectAdapter listRowAdapter = new ArrayObjectAdapter(presenterSelector);
-        for (Card card : cardRow.getCards()) {
-            listRowAdapter.add(card);
-        }
-        HeaderItem header = new HeaderItem(cardRow.getTitle());
-        return new CardListRow(header, listRowAdapter, cardRow);
-    }
-
-}
diff --git a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/MainFragment.java b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/MainFragment.java
index e836ad21..42a7cc7 100644
--- a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/MainFragment.java
+++ b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/MainFragment.java
@@ -98,7 +98,7 @@
 
     private void createRows() {
         String json = Utils
-                .inputStreamToString(getResources().openRawResource(R.raw.cards_launcher));
+                .inputStreamToString(getResources().openRawResource(R.raw.launcher_cards));
         CardRow[] rows = new Gson().fromJson(json, CardRow[].class);
         for (CardRow row : rows) {
             mRowsAdapter.add(createCardRow(row));
diff --git a/samples/SupportLeanbackShowcase/app/src/main/res/raw/browsing_example_01.json b/samples/SupportLeanbackShowcase/app/src/main/res/raw/browsing_example_01.json
deleted file mode 100644
index addc33c..0000000
--- a/samples/SupportLeanbackShowcase/app/src/main/res/raw/browsing_example_01.json
+++ /dev/null
@@ -1,356 +0,0 @@
-[
-  {
-    "title": "Movie Collection",
-    "cards": [
-      {
-        "type": "THIN",
-        "title": "The Amazing Spuder-Man",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_01"
-      },
-      {
-        "type": "THIN",
-        "title": "American Psycho",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_02"
-      },
-      {
-        "type": "THIN",
-        "title": "Big Hero 6",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_03"
-      },
-      {
-        "type": "THIN",
-        "title": "Edge of Tomorrow",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_04"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hobbit: The Desolation of Smaug",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_05"
-      },
-      {
-        "type": "THIN",
-        "title": "Interstellar",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_06"
-      },
-      {
-        "type": "THIN",
-        "title": "Jurassic Park",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_07"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hunger Games: Mockingjay Part I",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_08"
-      },
-      {
-        "type": "THIN",
-        "title": "Planes",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_09"
-      }
-    ]
-  },
-  {
-    "title": "Recommendations",
-    "cards": [
-      {
-        "type": "THIN",
-        "title": "The Amazing Spuder-Man",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_01"
-      },
-      {
-        "type": "THIN",
-        "title": "American Psycho",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_02"
-      },
-      {
-        "type": "THIN",
-        "title": "Big Hero 6",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_03"
-      },
-      {
-        "type": "THIN",
-        "title": "Edge of Tomorrow",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_04"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hobbit: The Desolation of Smaug",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_05"
-      },
-      {
-        "type": "THIN",
-        "title": "Interstellar",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_06"
-      },
-      {
-        "type": "THIN",
-        "title": "Jurassic Park",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_07"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hunger Games: Mockingjay Part I",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_08"
-      },
-      {
-        "type": "THIN",
-        "title": "Planes",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_09"
-      }
-    ]
-  },
-  {
-    "title": "Featured Movies",
-    "cards": [
-      {
-        "type": "THIN",
-        "title": "The Amazing Spuder-Man",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_01"
-      },
-      {
-        "type": "THIN",
-        "title": "American Psycho",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_02"
-      },
-      {
-        "type": "THIN",
-        "title": "Big Hero 6",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_03"
-      },
-      {
-        "type": "THIN",
-        "title": "Edge of Tomorrow",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_04"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hobbit: The Desolation of Smaug",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_05"
-      },
-      {
-        "type": "THIN",
-        "title": "Interstellar",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_06"
-      },
-      {
-        "type": "THIN",
-        "title": "Jurassic Park",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_07"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hunger Games: Mockingjay Part I",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_08"
-      },
-      {
-        "type": "THIN",
-        "title": "Planes",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_09"
-      }
-    ]
-  },
-  {
-    "title": "Categories",
-    "cards": [
-      {
-        "type": "THIN",
-        "title": "The Amazing Spuder-Man",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_01"
-      },
-      {
-        "type": "THIN",
-        "title": "American Psycho",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_02"
-      },
-      {
-        "type": "THIN",
-        "title": "Big Hero 6",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_03"
-      },
-      {
-        "type": "THIN",
-        "title": "Edge of Tomorrow",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_04"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hobbit: The Desolation of Smaug",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_05"
-      },
-      {
-        "type": "THIN",
-        "title": "Interstellar",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_06"
-      },
-      {
-        "type": "THIN",
-        "title": "Jurassic Park",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_07"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hunger Games: Mockingjay Part I",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_08"
-      },
-      {
-        "type": "THIN",
-        "title": "Planes",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_09"
-      }
-    ]
-  },
-  {
-    "title": "Favorites",
-    "cards": [
-      {
-        "type": "THIN",
-        "title": "The Amazing Spuder-Man",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_01"
-      },
-      {
-        "type": "THIN",
-        "title": "American Psycho",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_02"
-      },
-      {
-        "type": "THIN",
-        "title": "Big Hero 6",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_03"
-      },
-      {
-        "type": "THIN",
-        "title": "Edge of Tomorrow",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_04"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hobbit: The Desolation of Smaug",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_05"
-      },
-      {
-        "type": "THIN",
-        "title": "Interstellar",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_06"
-      },
-      {
-        "type": "THIN",
-        "title": "Jurassic Park",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_07"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hunger Games: Mockingjay Part I",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_08"
-      },
-      {
-        "type": "THIN",
-        "title": "Planes",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_09"
-      }
-    ]
-  },
-  {
-    "title": "Settings",
-    "cards": [
-      {
-        "type": "THIN",
-        "title": "The Amazing Spuder-Man",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_01"
-      },
-      {
-        "type": "THIN",
-        "title": "American Psycho",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_02"
-      },
-      {
-        "type": "THIN",
-        "title": "Big Hero 6",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_03"
-      },
-      {
-        "type": "THIN",
-        "title": "Edge of Tomorrow",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_04"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hobbit: The Desolation of Smaug",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_05"
-      },
-      {
-        "type": "THIN",
-        "title": "Interstellar",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_06"
-      },
-      {
-        "type": "THIN",
-        "title": "Jurassic Park",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_07"
-      },
-      {
-        "type": "THIN",
-        "title": "The Hunger Games: Mockingjay Part I",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_08"
-      },
-      {
-        "type": "THIN",
-        "title": "Planes",
-        "description": "$3.99",
-        "localImageResource": "card_image_movie_09"
-      }
-    ]
-  }
-]
\ No newline at end of file
diff --git a/samples/SupportLeanbackShowcase/app/src/main/res/raw/cards_launcher.json b/samples/SupportLeanbackShowcase/app/src/main/res/raw/launcher_cards.json
similarity index 89%
rename from samples/SupportLeanbackShowcase/app/src/main/res/raw/cards_launcher.json
rename to samples/SupportLeanbackShowcase/app/src/main/res/raw/launcher_cards.json
index 0f35a15..20faafd 100644
--- a/samples/SupportLeanbackShowcase/app/src/main/res/raw/cards_launcher.json
+++ b/samples/SupportLeanbackShowcase/app/src/main/res/raw/launcher_cards.json
@@ -10,13 +10,6 @@
         "description": "Showcase of various card design and layouts"
       },
       {
-        "id": 1,
-        "type": "DEFAULT",
-        "title": "Browsing Examples",
-        "localImageResource": "thumbnail_example_browse",
-        "description": "Showcase of various card design and layouts"
-      },
-      {
         "id": 2,
         "type": "DEFAULT",
         "title": "Grid Examples",
