| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 package org.chromium.content.browser.webcontents; | 5 package org.chromium.content.browser.webcontents; |
| 6 | 6 |
| 7 import android.annotation.SuppressLint; | 7 import android.annotation.SuppressLint; |
| 8 import android.graphics.Bitmap; | 8 import android.graphics.Bitmap; |
| 9 import android.graphics.Rect; | 9 import android.graphics.Rect; |
| 10 import android.os.Bundle; | 10 import android.os.Bundle; |
| 11 import android.os.Handler; | 11 import android.os.Handler; |
| 12 import android.os.Message; | 12 import android.os.Message; |
| 13 import android.os.Parcel; | 13 import android.os.Parcel; |
| 14 import android.os.ParcelUuid; | 14 import android.os.ParcelUuid; |
| 15 import android.os.Parcelable; | 15 import android.os.Parcelable; |
| 16 | 16 |
| 17 import org.chromium.base.ThreadUtils; | 17 import org.chromium.base.ThreadUtils; |
| 18 import org.chromium.base.VisibleForTesting; | 18 import org.chromium.base.VisibleForTesting; |
| 19 import org.chromium.base.annotations.CalledByNative; | 19 import org.chromium.base.annotations.CalledByNative; |
| 20 import org.chromium.base.annotations.JNINamespace; | 20 import org.chromium.base.annotations.JNINamespace; |
| 21 import org.chromium.content.browser.AppWebMessagePort; | 21 import org.chromium.content.browser.AppWebMessagePort; |
| 22 import org.chromium.content.browser.AppWebMessagePortService; | |
| 23 import org.chromium.content.browser.MediaSessionImpl; | 22 import org.chromium.content.browser.MediaSessionImpl; |
| 24 import org.chromium.content_public.browser.AccessibilitySnapshotCallback; | 23 import org.chromium.content_public.browser.AccessibilitySnapshotCallback; |
| 25 import org.chromium.content_public.browser.AccessibilitySnapshotNode; | 24 import org.chromium.content_public.browser.AccessibilitySnapshotNode; |
| 26 import org.chromium.content_public.browser.ContentBitmapCallback; | 25 import org.chromium.content_public.browser.ContentBitmapCallback; |
| 27 import org.chromium.content_public.browser.ImageDownloadCallback; | 26 import org.chromium.content_public.browser.ImageDownloadCallback; |
| 28 import org.chromium.content_public.browser.JavaScriptCallback; | 27 import org.chromium.content_public.browser.JavaScriptCallback; |
| 29 import org.chromium.content_public.browser.MessagePortService; | 28 import org.chromium.content_public.browser.MessagePort; |
| 30 import org.chromium.content_public.browser.NavigationController; | 29 import org.chromium.content_public.browser.NavigationController; |
| 31 import org.chromium.content_public.browser.SmartClipCallback; | 30 import org.chromium.content_public.browser.SmartClipCallback; |
| 32 import org.chromium.content_public.browser.WebContents; | 31 import org.chromium.content_public.browser.WebContents; |
| 33 import org.chromium.content_public.browser.WebContentsObserver; | 32 import org.chromium.content_public.browser.WebContentsObserver; |
| 34 import org.chromium.ui.OverscrollRefreshHandler; | 33 import org.chromium.ui.OverscrollRefreshHandler; |
| 35 import org.chromium.ui.accessibility.AXTextStyle; | 34 import org.chromium.ui.accessibility.AXTextStyle; |
| 36 | 35 |
| 37 import java.util.ArrayList; | 36 import java.util.ArrayList; |
| 38 import java.util.List; | 37 import java.util.List; |
| 39 import java.util.UUID; | 38 import java.util.UUID; |
| (...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 nativeEvaluateJavaScriptForTests(mNativeWebContentsAndroid, script, call
back); | 334 nativeEvaluateJavaScriptForTests(mNativeWebContentsAndroid, script, call
back); |
| 336 } | 335 } |
| 337 | 336 |
| 338 @Override | 337 @Override |
| 339 public void addMessageToDevToolsConsole(int level, String message) { | 338 public void addMessageToDevToolsConsole(int level, String message) { |
| 340 nativeAddMessageToDevToolsConsole(mNativeWebContentsAndroid, level, mess
age); | 339 nativeAddMessageToDevToolsConsole(mNativeWebContentsAndroid, level, mess
age); |
| 341 } | 340 } |
| 342 | 341 |
| 343 @Override | 342 @Override |
| 344 public void postMessageToFrame(String frameName, String message, | 343 public void postMessageToFrame(String frameName, String message, |
| 345 String sourceOrigin, String targetOrigin, int[] sentPortIds) { | 344 String sourceOrigin, String targetOrigin, MessagePort[] ports) { |
| 346 nativePostMessageToFrame(mNativeWebContentsAndroid, frameName, message, | 345 if (ports != null) { |
| 347 sourceOrigin, targetOrigin, sentPortIds); | 346 for (MessagePort port : ports) { |
| 347 if (port.isClosed() || port.isTransferred()) { |
| 348 throw new IllegalStateException("Port is already closed or t
ransferred"); |
| 349 } |
| 350 if (port.isStarted()) { |
| 351 throw new IllegalStateException("Port is already started"); |
| 352 } |
| 353 } |
| 354 } |
| 355 nativePostMessageToFrame( |
| 356 mNativeWebContentsAndroid, frameName, message, sourceOrigin, tar
getOrigin, ports); |
| 348 } | 357 } |
| 349 | 358 |
| 350 @Override | 359 @Override |
| 351 public AppWebMessagePort[] createMessageChannel(MessagePortService service) | 360 public AppWebMessagePort[] createMessageChannel() |
| 352 throws IllegalStateException { | 361 throws IllegalStateException { |
| 353 AppWebMessagePort[] ports = ((AppWebMessagePortService) service).createM
essageChannel(); | 362 return AppWebMessagePort.createPair(); |
| 354 nativeCreateMessageChannel(mNativeWebContentsAndroid, ports); | |
| 355 return ports; | |
| 356 } | 363 } |
| 357 | 364 |
| 358 @Override | 365 @Override |
| 359 public boolean hasAccessedInitialDocument() { | 366 public boolean hasAccessedInitialDocument() { |
| 360 return nativeHasAccessedInitialDocument(mNativeWebContentsAndroid); | 367 return nativeHasAccessedInitialDocument(mNativeWebContentsAndroid); |
| 361 } | 368 } |
| 362 | 369 |
| 363 @CalledByNative | 370 @CalledByNative |
| 364 private static void onEvaluateJavaScriptResult( | 371 private static void onEvaluateJavaScriptResult( |
| 365 String jsonResult, JavaScriptCallback callback) { | 372 String jsonResult, JavaScriptCallback callback) { |
| (...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 572 private native String nativeGetLastCommittedURL(long nativeWebContentsAndroi
d); | 579 private native String nativeGetLastCommittedURL(long nativeWebContentsAndroi
d); |
| 573 private native boolean nativeIsIncognito(long nativeWebContentsAndroid); | 580 private native boolean nativeIsIncognito(long nativeWebContentsAndroid); |
| 574 private native void nativeResumeLoadingCreatedWebContents(long nativeWebCont
entsAndroid); | 581 private native void nativeResumeLoadingCreatedWebContents(long nativeWebCont
entsAndroid); |
| 575 private native void nativeEvaluateJavaScript(long nativeWebContentsAndroid, | 582 private native void nativeEvaluateJavaScript(long nativeWebContentsAndroid, |
| 576 String script, JavaScriptCallback callback); | 583 String script, JavaScriptCallback callback); |
| 577 private native void nativeEvaluateJavaScriptForTests(long nativeWebContentsA
ndroid, | 584 private native void nativeEvaluateJavaScriptForTests(long nativeWebContentsA
ndroid, |
| 578 String script, JavaScriptCallback callback); | 585 String script, JavaScriptCallback callback); |
| 579 private native void nativeAddMessageToDevToolsConsole( | 586 private native void nativeAddMessageToDevToolsConsole( |
| 580 long nativeWebContentsAndroid, int level, String message); | 587 long nativeWebContentsAndroid, int level, String message); |
| 581 private native void nativePostMessageToFrame(long nativeWebContentsAndroid,
String frameName, | 588 private native void nativePostMessageToFrame(long nativeWebContentsAndroid,
String frameName, |
| 582 String message, String sourceOrigin, String targetOrigin, int[] sent
PortIds); | 589 String message, String sourceOrigin, String targetOrigin, MessagePor
t[] ports); |
| 583 private native void nativeCreateMessageChannel( | |
| 584 long nativeWebContentsAndroid, AppWebMessagePort[] ports); | |
| 585 private native boolean nativeHasAccessedInitialDocument( | 590 private native boolean nativeHasAccessedInitialDocument( |
| 586 long nativeWebContentsAndroid); | 591 long nativeWebContentsAndroid); |
| 587 private native int nativeGetThemeColor(long nativeWebContentsAndroid); | 592 private native int nativeGetThemeColor(long nativeWebContentsAndroid); |
| 588 private native void nativeRequestSmartClipExtract(long nativeWebContentsAndr
oid, | 593 private native void nativeRequestSmartClipExtract(long nativeWebContentsAndr
oid, |
| 589 SmartClipCallback callback, int x, int y, int width, int height); | 594 SmartClipCallback callback, int x, int y, int width, int height); |
| 590 private native void nativeRequestAccessibilitySnapshot( | 595 private native void nativeRequestAccessibilitySnapshot( |
| 591 long nativeWebContentsAndroid, AccessibilitySnapshotCallback callbac
k); | 596 long nativeWebContentsAndroid, AccessibilitySnapshotCallback callbac
k); |
| 592 private native void nativeSetOverscrollRefreshHandler( | 597 private native void nativeSetOverscrollRefreshHandler( |
| 593 long nativeWebContentsAndroid, OverscrollRefreshHandler nativeOversc
rollRefreshHandler); | 598 long nativeWebContentsAndroid, OverscrollRefreshHandler nativeOversc
rollRefreshHandler); |
| 594 private native void nativeGetContentBitmap(long nativeWebContentsAndroid, | 599 private native void nativeGetContentBitmap(long nativeWebContentsAndroid, |
| 595 ContentBitmapCallback callback, Bitmap.Config config, float scale, | 600 ContentBitmapCallback callback, Bitmap.Config config, float scale, |
| 596 float x, float y, float width, float height); | 601 float x, float y, float width, float height); |
| 597 private native void nativeReloadLoFiImages(long nativeWebContentsAndroid); | 602 private native void nativeReloadLoFiImages(long nativeWebContentsAndroid); |
| 598 private native int nativeDownloadImage(long nativeWebContentsAndroid, | 603 private native int nativeDownloadImage(long nativeWebContentsAndroid, |
| 599 String url, boolean isFavicon, int maxBitmapSize, | 604 String url, boolean isFavicon, int maxBitmapSize, |
| 600 boolean bypassCache, ImageDownloadCallback callback); | 605 boolean bypassCache, ImageDownloadCallback callback); |
| 601 private native void nativeDismissTextHandles(long nativeWebContentsAndroid); | 606 private native void nativeDismissTextHandles(long nativeWebContentsAndroid); |
| 602 } | 607 } |
| OLD | NEW |