Use android overlay for carrier configuration
- Modified browser to use android overlay logic for carrier
configuration changes.
Change-Id: I32f0364c0cad246c7f84c55c348eec629f5f0295
diff --git a/proguard.flags b/proguard.flags
index 5354e1c..42920ac 100644
--- a/proguard.flags
+++ b/proguard.flags
@@ -1,6 +1,6 @@
# Most of the classes in this package are fragments only referenced from XML
--keep class com.android.swe.browser.preferences.*
--keep class com.android.swe.browser.BrowserActivity{
+-keep class com.android.browser.preferences.*
+-keep class com.android.browser.BrowserActivity{
public void loadBookmarks();
public void loadHistory();
}
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ad4d378..96823e9 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -68,6 +68,7 @@
<string name="cancel">Cancel</string>
<!-- Label for a confirm button. Used in multiple contexts. -->
<string name="ok">OK</string>
+ <string name="config_carrier_resource">default</string>
<!-- Displayed on the title bar while the page is loading -->
<string name="title_bar_loading">Loading\u2026</string>
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java
index 90dcc4f..8bbe7b9 100644
--- a/src/com/android/browser/BrowserSettings.java
+++ b/src/com/android/browser/BrowserSettings.java
@@ -137,16 +137,15 @@
// add for carrier feature
private static Context sResPackageCtx;
- private android.os.CountDownTimer mCountDownTimer;
//Determine if WebView is Initialized or not
private boolean mWebViewInitialized;
- public static void initialize(final Context context) {
+ public static void initialize(final Context context) {
sInstance = new BrowserSettings(context);
}
- public static BrowserSettings getInstance() {
+ public static BrowserSettings getInstance() {
return sInstance;
}
@@ -254,11 +253,7 @@
}
// add for carrier homepage feature
- Object[] params = { new String("persist.env.c.browser.resource"),
- new String("default")};
- Class[] type = new Class[] {String.class, String.class};
- String browserRes = (String)ReflectHelper.invokeStaticMethod(
- "android.os.SystemProperties","get",type, params);
+ String browserRes = mContext.getResources().getString(R.string.config_carrier_resource);
if ("cu".equals(browserRes) || "cmcc".equals(browserRes)) {
int resID = sResPackageCtx.getResources().getIdentifier(
"homepage_base", "string", "com.android.browser.res");
diff --git a/src/com/android/browser/BrowserWebViewFactory.java b/src/com/android/browser/BrowserWebViewFactory.java
index 4364b26..caa0cf8 100644
--- a/src/com/android/browser/BrowserWebViewFactory.java
+++ b/src/com/android/browser/BrowserWebViewFactory.java
@@ -65,11 +65,7 @@
w.getSettings().setDisplayZoomControls(!supportsMultiTouch);
// add for carrier homepage feature
- Object[] params = {new String("persist.env.c.browser.resource"),
- new String("default")};
- Class[] type = new Class[] {String.class, String.class};
- String browserRes = (String)ReflectHelper.invokeStaticMethod(
- "android.os.SystemProperties","get", type, params);
+ String browserRes = mContext.getResources().getString(R.string.config_carrier_resource);
if ("ct".equals(browserRes)) {
w.getSettings().setJavaScriptEnabled(true);
if (mContext instanceof BrowserActivity) {
diff --git a/src/com/android/browser/TabControl.java b/src/com/android/browser/TabControl.java
index 66736cb..a1ebd72 100644
--- a/src/com/android/browser/TabControl.java
+++ b/src/com/android/browser/TabControl.java
@@ -417,12 +417,8 @@
// If the webview restore successfully, add javascript interface again.
WebView view = t.getWebView();
if (view != null) {
- Object[] params = { new String("persist.env.c.browser.resource"),
- new String("default")};
- Class[] type = new Class[] {String.class, String.class};
- String browserRes = (String)ReflectHelper.invokeStaticMethod(
- "android.os.SystemProperties","get",
- type, params);
+ String browserRes = mController.getActivity().getApplicationContext()
+ .getResources().getString(R.string.config_carrier_resource);
if ("ct".equals(browserRes)) {
view.getSettings().setJavaScriptEnabled(true);
if (mController.getActivity() instanceof BrowserActivity) {
diff --git a/src/com/android/browser/provider/BrowserProvider2.java b/src/com/android/browser/provider/BrowserProvider2.java
index cbb39b6..e37e7fe 100644
--- a/src/com/android/browser/provider/BrowserProvider2.java
+++ b/src/com/android/browser/provider/BrowserProvider2.java
@@ -658,12 +658,8 @@
db.insertOrThrow(TABLE_BOOKMARKS, null, values);
// add for carrier bookmark feature
- Object[] params = { new String("persist.env.c.browser.resource"),
- new String("default")};
- Class[] type = new Class[] {String.class, String.class};
- String browserRes = (String)ReflectHelper.invokeStaticMethod(
- "android.os.SystemProperties", "get",
- type, params);
+ String browserRes = getContext().getResources().getString(
+ R.string.config_carrier_resource);
//don't add default bookmarks for cmcc
if (!"cmcc".equals(browserRes)) {