| Index: content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java b/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| index cc33b2dac09e8da12217a110430cce8147bc3c13..8c5d159b1002dc067eb2b40435cb00f6b30b95ea 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| @@ -24,6 +24,7 @@ import org.chromium.content_public.browser.AccessibilitySnapshotNode;
|
| import org.chromium.content_public.browser.ContentBitmapCallback;
|
| import org.chromium.content_public.browser.ImageDownloadCallback;
|
| import org.chromium.content_public.browser.JavaScriptCallback;
|
| +import org.chromium.content_public.browser.MessagePort;
|
| import org.chromium.content_public.browser.MessagePortService;
|
| import org.chromium.content_public.browser.NavigationController;
|
| import org.chromium.content_public.browser.WebContents;
|
| @@ -337,9 +338,19 @@ import java.util.UUID;
|
|
|
| @Override
|
| public void postMessageToFrame(
|
| - String frameName, String message, String targetOrigin, int[] sentPortIds) {
|
| + String frameName, String message, String targetOrigin, MessagePort[] ports) {
|
| + if (ports != null) {
|
| + for (MessagePort port : ports) {
|
| + if (port.isClosed() || port.isTransferred()) {
|
| + throw new IllegalStateException("Port is already closed or transferred");
|
| + }
|
| + if (port.isStarted()) {
|
| + throw new IllegalStateException("Port is already started");
|
| + }
|
| + }
|
| + }
|
| nativePostMessageToFrame(
|
| - mNativeWebContentsAndroid, frameName, message, targetOrigin, sentPortIds);
|
| + mNativeWebContentsAndroid, frameName, message, targetOrigin, ports);
|
| }
|
|
|
| @Override
|
| @@ -531,7 +542,7 @@ import java.util.UUID;
|
| private native void nativeAddMessageToDevToolsConsole(
|
| long nativeWebContentsAndroid, int level, String message);
|
| private native void nativePostMessageToFrame(long nativeWebContentsAndroid, String frameName,
|
| - String message, String targetOrigin, int[] sentPortIds);
|
| + String message, String targetOrigin, MessagePort[] ports);
|
| private native void nativeCreateMessageChannel(
|
| long nativeWebContentsAndroid, AppWebMessagePort[] ports);
|
| private native boolean nativeHasAccessedInitialDocument(
|
|
|