| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEngineAdapter.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEngineAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEngineAdapter.java
|
| index b12225bb617c6eddccebbda3d7e5524c41b78cb1..4d2fdb28aa4f96fe7edb6d03f46bf682381d06a8 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEngineAdapter.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/SearchEngineAdapter.java
|
| @@ -155,9 +155,15 @@ public class SearchEngineAdapter extends BaseAdapter implements LoadListener, On
|
|
|
| @Override
|
| public int getCount() {
|
| - return mPrepopulatedSearchEngines == null
|
| - ? 0
|
| - : mPrepopulatedSearchEngines.size() + mRecentSearchEngines.size() + 1;
|
| + int size = 0;
|
| + if (mPrepopulatedSearchEngines != null) {
|
| + size += mPrepopulatedSearchEngines.size();
|
| + }
|
| + if (mRecentSearchEngines != null && mRecentSearchEngines.size() != 0) {
|
| + // Account for the header by adding one to the size.
|
| + size += mRecentSearchEngines.size() + 1;
|
| + }
|
| + return size;
|
| }
|
|
|
| @Override
|
| @@ -183,7 +189,7 @@ public class SearchEngineAdapter extends BaseAdapter implements LoadListener, On
|
|
|
| @Override
|
| public int getItemViewType(int position) {
|
| - if (position == mPrepopulatedSearchEngines.size()) {
|
| + if (position == mPrepopulatedSearchEngines.size() && mRecentSearchEngines.size() != 0) {
|
| return VIEW_TYPE_DIVIDER;
|
| } else {
|
| return VIEW_TYPE_ITEM;
|
| @@ -196,7 +202,8 @@ public class SearchEngineAdapter extends BaseAdapter implements LoadListener, On
|
| TemplateUrl templateUrl = (TemplateUrl) getItem(position);
|
| int itemViewType = getItemViewType(position);
|
| if (convertView == null) {
|
| - view = mLayoutInflater.inflate(itemViewType == VIEW_TYPE_DIVIDER
|
| + view = mLayoutInflater.inflate(
|
| + itemViewType == VIEW_TYPE_DIVIDER && mRecentSearchEngines.size() != 0
|
| ? R.layout.search_engine_recent_title
|
| : R.layout.search_engine,
|
| null);
|
| @@ -373,6 +380,12 @@ public class SearchEngineAdapter extends BaseAdapter implements LoadListener, On
|
| }
|
|
|
| private int computeStartIndexForRecentSearchEngines() {
|
| - return mPrepopulatedSearchEngines.size() + 1;
|
| + // If there are custom search engines to show, add 1 for showing the "Recently visited"
|
| + // header.
|
| + if (mRecentSearchEngines.size() > 0) {
|
| + return mPrepopulatedSearchEngines.size() + 1;
|
| + } else {
|
| + return mPrepopulatedSearchEngines.size();
|
| + }
|
| }
|
| }
|
|
|