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/res/values-zh-rCN/donottranslate-search_engines.xml b/res/values-zh-rCN/donottranslate-search_engines.xml
index c38055c..b85a2b5 100644
--- a/res/values-zh-rCN/donottranslate-search_engines.xml
+++ b/res/values-zh-rCN/donottranslate-search_engines.xml
@@ -23,8 +23,10 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string-array name="search_engines" translatable="false">
<item>google</item>
- <item>baidu</item>
+ <item>baidu_cn</item>
+ <item>cmcc_cn</item>
<item>yahoo_cn</item>
<item>bing_zh_CN</item>
</string-array>
+ <string name="default_search_engine_value">baidu_cn</string>
</resources>
diff --git a/res/values/all_search_engines.xml b/res/values/all_search_engines.xml
index bbba0ee..4fee10a 100644
--- a/res/values/all_search_engines.xml
+++ b/res/values/all_search_engines.xml
@@ -116,7 +116,7 @@
<item>ISO-8859-1</item>
<item></item>
</string-array>
- <string-array name="baidu" translatable="false">
+ <string-array name="baidu_cn" translatable="false">
<item>百度</item>
<item>baidu.com</item>
<item>http://www.baidu.com/favicon.ico</item>
@@ -124,6 +124,14 @@
<item>GB2312</item>
<item></item>
</string-array>
+ <string-array name="baidu" translatable="false">
+ <item>Baidu</item>
+ <item>baidu.com</item>
+ <item>http://www.baidu.com/favicon.ico</item>
+ <item>http://www.baidu.com/s?wd={searchTerms}</item>
+ <item>UTF-8</item>
+ <item></item>
+ </string-array>
<string-array name="yahoo_ch" translatable="false">
<item>Yahoo! Suche</item>
<item>ch.yahoo.com</item>
@@ -140,6 +148,23 @@
<item>UTF-8</item>
<item>http://api.bing.com/osjson.aspx?query={searchTerms}&language={language}</item>
</string-array>
+ <string-array name="cmcc_cn" translatable="false">
+ <item>移动搜索</item>
+ <item>s.139.com</item>
+ <item>http://s.139.com/favicon.ico</item>
+ <item>http://s.139.com/search.do?q={searchTerms}&category=downloadable|web|browseable&tid=2123,2124,2125,2126&fr=portalcustom2</item>
+ <item>GB2312</item>
+ <item></item>
+ </string-array>
+
+ <string-array name="cmcc" translatable="false">
+ <item>139 Search</item>
+ <item>s.139.com</item>
+ <item>http://s.139.com/favicon.ico</item>
+ <item>http://s.139.com/search.do?q={searchTerms}&category=downloadable|web|browseable&tid=2123,2124,2125,2126&fr=portalcustom2</item>
+ <item>UTF-8</item>
+ <item></item>
+ </string-array>
<string-array name="yahoo_cn" translatable="false">
<item>中国雅虎</item>
<item>cn.yahoo.com</item>
diff --git a/res/values/donottranslate-search_engines.xml b/res/values/donottranslate-search_engines.xml
index c6ed9ca..081efc0 100644
--- a/res/values/donottranslate-search_engines.xml
+++ b/res/values/donottranslate-search_engines.xml
@@ -23,7 +23,10 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string-array name="search_engines" translatable="false">
<item>google</item>
+ <item>baidu</item>
+ <item>cmcc</item>
<item>yahoo</item>
<item>bing</item>
</string-array>
+ <string name="default_search_engine_value">baidu</string>
</resources>
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;
}