am a95604de
: Merge "Adding developer toggle for using Chromium WebView." into jb-mr2-dev
* commit 'a95604de1acd89999c240449e926485393963455': Adding developer toggle for using Chromium WebView.
This commit is contained in:
@@ -4002,6 +4002,11 @@
|
||||
<string name="show_all_anrs_summary">Show App Not Responding dialog
|
||||
for background apps</string>
|
||||
|
||||
<!-- UI debug setting: use experimental WebView [CHAR LIMIT=25] -->
|
||||
<string name="experimental_webview">Use Experimental WebView</string>
|
||||
<!-- UI debug setting: use experimental WebView summary [CHAR LIMIT=50] -->
|
||||
<string name="experimental_webview_summary">Apps will use the newest (beta) WebView</string>
|
||||
|
||||
<!-- Activity title for network data usage summary. [CHAR LIMIT=25] -->
|
||||
<string name="data_usage_summary_title">Data usage</string>
|
||||
<!-- Title for option to pick visible time range from a list available usage periods. [CHAR LIMIT=25] -->
|
||||
|
@@ -234,6 +234,11 @@
|
||||
android:title="@string/show_all_anrs"
|
||||
android:summary="@string/show_all_anrs_summary"/>
|
||||
|
||||
<CheckBoxPreference
|
||||
android:key="experimental_webview"
|
||||
android:title="@string/experimental_webview"
|
||||
android:summary="@string/experimental_webview_summary"/>
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
</PreferenceScreen>
|
||||
|
@@ -57,6 +57,7 @@ import android.preference.PreferenceScreen;
|
||||
import android.provider.Settings;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import android.webkit.WebViewFactory;
|
||||
import android.view.Gravity;
|
||||
import android.view.HardwareRenderer;
|
||||
import android.view.IWindowManager;
|
||||
@@ -130,6 +131,8 @@ public class DevelopmentSettings extends PreferenceFragment
|
||||
|
||||
private static final String SHOW_ALL_ANRS_KEY = "show_all_anrs";
|
||||
|
||||
private static final String WEBVIEW_EXPERIMENTAL_KEY = "experimental_webview";
|
||||
|
||||
private static final String TAG_CONFIRM_ENFORCE = "confirm_enforce";
|
||||
|
||||
private static final String PACKAGE_MIME_TYPE = "application/vnd.android.package-archive";
|
||||
@@ -183,6 +186,7 @@ public class DevelopmentSettings extends PreferenceFragment
|
||||
private ListPreference mAppProcessLimit;
|
||||
|
||||
private CheckBoxPreference mShowAllANRs;
|
||||
private CheckBoxPreference mExperimentalWebView;
|
||||
|
||||
private final ArrayList<Preference> mAllPrefs = new ArrayList<Preference>();
|
||||
private final ArrayList<CheckBoxPreference> mResetCbPrefs
|
||||
@@ -275,6 +279,15 @@ public class DevelopmentSettings extends PreferenceFragment
|
||||
mAllPrefs.add(mShowAllANRs);
|
||||
mResetCbPrefs.add(mShowAllANRs);
|
||||
|
||||
if (WebViewFactory.isExperimentalWebViewAvailable()) {
|
||||
mExperimentalWebView = findAndInitCheckboxPref(WEBVIEW_EXPERIMENTAL_KEY);
|
||||
} else {
|
||||
Preference experimentalWebView = findPreference(WEBVIEW_EXPERIMENTAL_KEY);
|
||||
if (experimentalWebView != null) {
|
||||
getPreferenceScreen().removePreference(experimentalWebView);
|
||||
}
|
||||
}
|
||||
|
||||
Preference hdcpChecking = findPreference(HDCP_CHECKING_KEY);
|
||||
if (hdcpChecking != null) {
|
||||
mAllPrefs.add(hdcpChecking);
|
||||
@@ -431,6 +444,7 @@ public class DevelopmentSettings extends PreferenceFragment
|
||||
updateImmediatelyDestroyActivitiesOptions();
|
||||
updateAppProcessLimitOptions();
|
||||
updateShowAllANRsOptions();
|
||||
updateExperimentalWebViewOptions();
|
||||
updateVerifyAppsOverUsbOptions();
|
||||
updateBugreportOptions();
|
||||
}
|
||||
@@ -957,6 +971,21 @@ public class DevelopmentSettings extends PreferenceFragment
|
||||
getActivity().getContentResolver(), Settings.Secure.ANR_SHOW_BACKGROUND, 0) != 0);
|
||||
}
|
||||
|
||||
private void writeExperimentalWebViewOptions() {
|
||||
if (mExperimentalWebView != null) {
|
||||
SystemProperties.set(WebViewFactory.WEBVIEW_EXPERIMENTAL_PROPERTY,
|
||||
mExperimentalWebView.isChecked() ? "true" : null);
|
||||
pokeSystemProperties();
|
||||
}
|
||||
}
|
||||
|
||||
private void updateExperimentalWebViewOptions() {
|
||||
if (mExperimentalWebView != null) {
|
||||
updateCheckBox(mExperimentalWebView, SystemProperties.getBoolean(
|
||||
WebViewFactory.WEBVIEW_EXPERIMENTAL_PROPERTY, false));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
||||
if (buttonView == mEnabledSwitch) {
|
||||
@@ -1071,6 +1100,8 @@ public class DevelopmentSettings extends PreferenceFragment
|
||||
writeImmediatelyDestroyActivitiesOptions();
|
||||
} else if (preference == mShowAllANRs) {
|
||||
writeShowAllANRsOptions();
|
||||
} else if (preference == mExperimentalWebView) {
|
||||
writeExperimentalWebViewOptions();
|
||||
} else if (preference == mForceHardwareUi) {
|
||||
writeHardwareUiOptions();
|
||||
} else if (preference == mForceMsaa) {
|
||||
|
Reference in New Issue
Block a user