Merge "WebView: rename initSafeBrowsing and remove shutdownSafeBrowsing" into oc-mr1-dev
diff --git a/api/current.txt b/api/current.txt
index 24ab586..aec89e3 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -49064,7 +49064,6 @@
method public void goBack();
method public void goBackOrForward(int);
method public void goForward();
- method public static void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
method public void invokeZoomPicker();
method public boolean isPrivateBrowsingEnabled();
method public void loadData(java.lang.String, java.lang.String, java.lang.String);
@@ -49112,7 +49111,7 @@
method public void setWebViewClient(android.webkit.WebViewClient);
method public deprecated boolean shouldDelayChildPressedState();
method public deprecated boolean showFindDialog(java.lang.String, boolean);
- method public static void shutdownSafeBrowsing();
+ method public static void startSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
method public void stopLoading();
method public void zoomBy(float);
method public boolean zoomIn();
diff --git a/api/system-current.txt b/api/system-current.txt
index 9963268..4e8f843 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -52747,7 +52747,6 @@
method public void goBack();
method public void goBackOrForward(int);
method public void goForward();
- method public static void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
method public void invokeZoomPicker();
method public boolean isPrivateBrowsingEnabled();
method public void loadData(java.lang.String, java.lang.String, java.lang.String);
@@ -52795,7 +52794,7 @@
method public void setWebViewClient(android.webkit.WebViewClient);
method public deprecated boolean shouldDelayChildPressedState();
method public deprecated boolean showFindDialog(java.lang.String, boolean);
- method public static void shutdownSafeBrowsing();
+ method public static void startSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
method public void stopLoading();
method public void zoomBy(float);
method public boolean zoomIn();
@@ -52992,7 +52991,6 @@
method public abstract android.net.Uri[] parseFileChooserResult(int, android.content.Intent);
method public abstract void setSafeBrowsingWhitelist(java.util.List<java.lang.String>, android.webkit.ValueCallback<java.lang.Boolean>);
method public abstract void setWebContentsDebuggingEnabled(boolean);
- method public abstract void shutdownSafeBrowsing();
}
public class WebViewFragment extends android.app.Fragment {
diff --git a/api/test-current.txt b/api/test-current.txt
index 343228a..6ac5790 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -49519,7 +49519,6 @@
method public void goBack();
method public void goBackOrForward(int);
method public void goForward();
- method public static void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
method public void invokeZoomPicker();
method public boolean isPrivateBrowsingEnabled();
method public void loadData(java.lang.String, java.lang.String, java.lang.String);
@@ -49567,7 +49566,7 @@
method public void setWebViewClient(android.webkit.WebViewClient);
method public deprecated boolean shouldDelayChildPressedState();
method public deprecated boolean showFindDialog(java.lang.String, boolean);
- method public static void shutdownSafeBrowsing();
+ method public static void startSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
method public void stopLoading();
method public void zoomBy(float);
method public boolean zoomIn();
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 049f1ef..4b98e35 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -1628,42 +1628,28 @@
}
/**
- * Starts Safe Browsing initialization. This should only be called once.
- *
+ * Starts Safe Browsing initialization.
* <p>
- * Because the Safe Browsing feature takes time to initialize, WebView may temporarily whitelist
- * URLs until the feature is ready. The callback will be invoked with true once initialization
- * is complete.
- * </p>
- *
+ * URL loads are not guaranteed to be protected by Safe Browsing until after {@code callback} is
+ * invoked with {@code true}. Safe Browsing is not fully supported on all devices. For those
+ * devices {@code callback} will receive {@code false}.
* <p>
- * This does not enable the Safe Browsing feature itself, and should only be used if the feature
- * is otherwise enabled.
- * </p>
- *
+ * This does not enable the Safe Browsing feature itself, and should only be called if Safe
+ * Browsing is enabled by the manifest tag or {@link WebSettings#setSafeBrowsingEnabled}. This
+ * prepares resources used for Safe Browsing.
* <p>
- * This does not require an Activity Context, and will always use the application Context to do
- * its work.
- * </p>
+ * This should be called with the Application Context (and will always use the Application
+ * context to do its work regardless).
*
* @param context Application Context.
- * @param callback will be called with the value true if initialization is
- * successful. The callback will be run on the UI thread.
+ * @param callback will be called on the UI thread with {@code true} if initialization is
+ * successful, {@code false} otherwise.
*/
- public static void initSafeBrowsing(Context context, ValueCallback<Boolean> callback) {
+ public static void startSafeBrowsing(Context context, ValueCallback<Boolean> callback) {
getFactory().getStatics().initSafeBrowsing(context, callback);
}
/**
- * Shuts down Safe Browsing. This should only be called once. This does not disable the feature,
- * it only frees resources used by Safe Browsing code. To disable Safe Browsing on an individual
- * WebView, see {@link WebSettings#setSafeBrowsingEnabled}
- */
- public static void shutdownSafeBrowsing() {
- getFactory().getStatics().shutdownSafeBrowsing();
- }
-
- /**
* Sets the list of domains that are exempt from SafeBrowsing checks. The list is
* global for all the WebViews.
* <p>
diff --git a/core/java/android/webkit/WebViewFactoryProvider.java b/core/java/android/webkit/WebViewFactoryProvider.java
index 4f6513f..4c47abc 100644
--- a/core/java/android/webkit/WebViewFactoryProvider.java
+++ b/core/java/android/webkit/WebViewFactoryProvider.java
@@ -80,17 +80,11 @@
/**
* Implement the API method
- * {@link android.webkit.WebView#initSafeBrowsing(Context , ValueCallback<Boolean>)}
+ * {@link android.webkit.WebView#startSafeBrowsing(Context , ValueCallback<Boolean>)}
*/
void initSafeBrowsing(Context context, ValueCallback<Boolean> callback);
/**
- * Implement the API method
- * {@link android.webkit.WebView#shutdownSafeBrowsing()}
- */
- void shutdownSafeBrowsing();
-
- /**
* Implement the API method
* {@link android.webkit.WebView#setSafeBrowsingWhitelist(List<String>,
* ValueCallback<Boolean>)}