summaryrefslogtreecommitdiffstats
path: root/android_webview/java
diff options
context:
space:
mode:
authorgsennton <gsennton@chromium.org>2015-10-30 09:57:03 -0700
committerCommit bot <commit-bot@chromium.org>2015-10-30 16:58:12 +0000
commitf9205b6fc8434ff6e6ee1a66fa682668d01f9a64 (patch)
tree263a167a86be5fd8afc10d5cebb3c79f07b33352 /android_webview/java
parenta8c387bd6d5f094afc7166103f9e0869474b9b2d (diff)
downloadchromium_src-f9205b6fc8434ff6e6ee1a66fa682668d01f9a64.zip
chromium_src-f9205b6fc8434ff6e6ee1a66fa682668d01f9a64.tar.gz
chromium_src-f9205b6fc8434ff6e6ee1a66fa682668d01f9a64.tar.bz2
Defer loads on WebView popup windows until webcontents delegate attached
In WebView we initalize popup windows asynchronously so loading a url synchronously can result in it being loaded before the WebView sets its webcontentsdelegate. BUG=548316, 542548 Review URL: https://codereview.chromium.org/1405333005 Cr-Commit-Position: refs/heads/master@{#357127}
Diffstat (limited to 'android_webview/java')
-rw-r--r--android_webview/java/src/org/chromium/android_webview/AwContents.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java
index 8ad3b45..96cfaa0 100644
--- a/android_webview/java/src/org/chromium/android_webview/AwContents.java
+++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java
@@ -1035,6 +1035,9 @@ public class AwContents implements SmartClipProvider,
}
setNewAwContents(popupNativeAwContents);
+ // We defer loading any URL on the popup until it has been properly intialized (through
+ // setNewAwContents). We resume the load here.
+ nativeResumeLoadingCreatedPopupWebContents(mNativeAwContents);
// Finally refresh all view state for mContentViewCore and mNativeAwContents.
if (!wasPaused) onResume();
@@ -3235,4 +3238,5 @@ public class AwContents implements SmartClipProvider,
private native void nativeCreateMessageChannel(long nativeAwContents, AwMessagePort[] ports);
private native void nativeGrantFileSchemeAccesstoChildProcess(long nativeAwContents);
+ private native void nativeResumeLoadingCreatedPopupWebContents(long nativeAwContents);
}