| Index: android_webview/java/src/org/chromium/android_webview/AwContentsClientCallbackHelper.java
|
| diff --git a/android_webview/java/src/org/chromium/android_webview/AwContentsClientCallbackHelper.java b/android_webview/java/src/org/chromium/android_webview/AwContentsClientCallbackHelper.java
|
| index 0744eb42ecd1f798fbda3b38f59979979792d1ee..56be98669bddb90ce9aa478806bb661ac8f449e0 100644
|
| --- a/android_webview/java/src/org/chromium/android_webview/AwContentsClientCallbackHelper.java
|
| +++ b/android_webview/java/src/org/chromium/android_webview/AwContentsClientCallbackHelper.java
|
| @@ -70,6 +70,17 @@ public class AwContentsClientCallbackHelper {
|
| }
|
| }
|
|
|
| + private static class OnReceivedHttpErrorInfo {
|
| + final AwContentsClient.AwWebResourceRequest mRequest;
|
| + final AwWebResourceResponse mResponse;
|
| +
|
| + OnReceivedHttpErrorInfo(
|
| + AwContentsClient.AwWebResourceRequest request, AwWebResourceResponse response) {
|
| + mRequest = request;
|
| + mResponse = response;
|
| + }
|
| + }
|
| +
|
| private static final int MSG_ON_LOAD_RESOURCE = 1;
|
| private static final int MSG_ON_PAGE_STARTED = 2;
|
| private static final int MSG_ON_DOWNLOAD_START = 3;
|
| @@ -77,6 +88,7 @@ public class AwContentsClientCallbackHelper {
|
| private static final int MSG_ON_RECEIVED_ERROR = 5;
|
| private static final int MSG_ON_NEW_PICTURE = 6;
|
| private static final int MSG_ON_SCALE_CHANGED_SCALED = 7;
|
| + private static final int MSG_ON_RECEIVED_HTTP_ERROR = 8;
|
|
|
| // Minimum period allowed between consecutive onNewPicture calls, to rate-limit the callbacks.
|
| private static final long ON_NEW_PICTURE_MIN_PERIOD_MILLIS = 500;
|
| @@ -142,6 +154,11 @@ public class AwContentsClientCallbackHelper {
|
| mContentsClient.onScaleChangedScaled(oldScale, newScale);
|
| break;
|
| }
|
| + case MSG_ON_RECEIVED_HTTP_ERROR: {
|
| + OnReceivedHttpErrorInfo info = (OnReceivedHttpErrorInfo) msg.obj;
|
| + mContentsClient.onReceivedHttpError(info.mRequest, info.mResponse);
|
| + break;
|
| + }
|
| default:
|
| throw new IllegalStateException(
|
| "AwContentsClientCallbackHelper: unhandled message " + msg.what);
|
| @@ -196,4 +213,11 @@ public class AwContentsClientCallbackHelper {
|
| mHandler.sendMessage(mHandler.obtainMessage(MSG_ON_SCALE_CHANGED_SCALED,
|
| Float.floatToIntBits(oldScale), Float.floatToIntBits(newScale)));
|
| }
|
| +
|
| + public void postOnReceivedHttpError(AwContentsClient.AwWebResourceRequest request,
|
| + AwWebResourceResponse response) {
|
| + OnReceivedHttpErrorInfo info =
|
| + new OnReceivedHttpErrorInfo(request, response);
|
| + mHandler.sendMessage(mHandler.obtainMessage(MSG_ON_RECEIVED_HTTP_ERROR, info));
|
| + }
|
| }
|
|
|