Browser: add to support search engine preset

1. Set Baidu search engine as the default search engine.
2. Add 139 search engine for carrier.

CRs-fixed: 507955

Change-Id: Idccc86f2d9ac439dcfff5f65e853bb4618fed361
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java
index 17e2001..0b415be 100644
--- a/src/com/android/browser/BrowserSettings.java
+++ b/src/com/android/browser/BrowserSettings.java
@@ -757,7 +757,11 @@
     // -----------------------------
 
     public String getSearchEngineName() {
-        return mPrefs.getString(PREF_SEARCH_ENGINE, SearchEngine.GOOGLE);
+        String defaultSearchEngineValue = mContext.getString(R.string.default_search_engine_value);
+        if (defaultSearchEngineValue == null) {
+            defaultSearchEngineValue = SearchEngine.GOOGLE;
+        }
+        return mPrefs.getString(PREF_SEARCH_ENGINE, defaultSearchEngineValue);
     }
 
     public boolean allowAppTabs() {
diff --git a/src/com/android/browser/search/SearchEnginePreference.java b/src/com/android/browser/search/SearchEnginePreference.java
index 18ce495..62ce97b 100644
--- a/src/com/android/browser/search/SearchEnginePreference.java
+++ b/src/com/android/browser/search/SearchEnginePreference.java
@@ -57,6 +57,14 @@
 
         setEntryValues(entryValues.toArray(new CharSequence[entryValues.size()]));
         setEntries(entries.toArray(new CharSequence[entries.size()]));
-    }
 
+        //for other language the default search engine is google,but for English and
+        //Chinese the default search engine should be Baidu.
+        String language = context.getResources().getConfiguration().locale.toString();
+        if (language.equals("zh_CN")) {
+            setDefaultValue("baidu_cn");
+        } else if (language.equals("en_US")) {
+            setDefaultValue("baidu");
+        }
+    }
 }
diff --git a/src/com/android/browser/search/SearchEngines.java b/src/com/android/browser/search/SearchEngines.java
index 433e877..2484ce0 100644
--- a/src/com/android/browser/search/SearchEngines.java
+++ b/src/com/android/browser/search/SearchEngines.java
@@ -19,6 +19,7 @@
 
 import android.content.Context;
 import android.content.res.Resources;
+import android.os.SystemProperties;
 import android.text.TextUtils;
 import android.util.Log;
 
@@ -37,10 +38,16 @@
         ArrayList<SearchEngineInfo> searchEngineInfos = new ArrayList<SearchEngineInfo>();
         Resources res = context.getResources();
         String[] searchEngines = res.getStringArray(R.array.search_engines);
+        String browserRes = SystemProperties.get("persist.env.c.browser.resource", "default");
         for (int i = 0; i < searchEngines.length; i++) {
             String name = searchEngines[i];
-            SearchEngineInfo info = new SearchEngineInfo(context, name);
-            searchEngineInfos.add(info);
+            if ("cmcc".equals(browserRes)) {
+                SearchEngineInfo info = new SearchEngineInfo(context, name);
+                searchEngineInfos.add(info);
+            } else if (!name.startsWith("cmcc")) {
+                SearchEngineInfo info = new SearchEngineInfo(context, name);
+                searchEngineInfos.add(info);
+            }
         }
         return searchEngineInfos;
     }