Snap for 4680594 from da629b9f10fd0389cf816734c769c225f32f1b8a to pi-release

Change-Id: If7aafc024e5702ca581906a58a6ced054335576a
diff --git a/BUILD.gn b/BUILD.gn
index 9b36892..07c3cb6 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -14,6 +14,7 @@
     "src/org/chromium/support_lib_boundary/SupportLibraryInfoBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java",
+    "src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java",
diff --git a/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java
new file mode 100644
index 0000000..2fccfe4
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java
@@ -0,0 +1,25 @@
+// Copyright 2018 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.support_lib_boundary;
+
+import android.webkit.WebResourceRequest;
+import android.webkit.WebResourceResponse;
+import android.webkit.WebView;
+
+import java.lang.reflect.InvocationHandler;
+
+/**
+ * Boundary interface for WebViewClientCompat.
+ */
+public interface WebViewClientBoundaryInterface {
+    void onPageCommitVisible(WebView view, String url);
+    void onReceivedError(WebView view, WebResourceRequest request,
+            /* WebResourceError */ InvocationHandler error);
+    void onReceivedHttpError(
+            WebView view, WebResourceRequest request, WebResourceResponse errorResponse);
+    void onSafeBrowsingHit(WebView view, WebResourceRequest request, int threatType,
+            /* SafeBrowsingResponse */ InvocationHandler callback);
+    boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request);
+}