Commit 7bf3d6dc authored by boliu's avatar boliu Committed by Commit bot

[Android] Remove startRender from evaluateJavaScript

Always start a renderer if one does not already exist.
The check is cheap so no need for a parameter to control it.

BUG=

Review URL: https://codereview.chromium.org/570783002

Cr-Commit-Position: refs/heads/master@{#294985}
parent c6338d72
...@@ -1713,14 +1713,12 @@ public class AwContents { ...@@ -1713,14 +1713,12 @@ public class AwContents {
}; };
} }
mWebContents.evaluateJavaScript(script, jsCallback, false); mWebContents.evaluateJavaScript(script, jsCallback);
} }
/** // TODO(boliu): Remove this once Android side no longer calls this.
* @see ContentViewCore.evaluateJavaScriptEvenIfNotYetNavigated(String)
*/
public void evaluateJavaScriptEvenIfNotYetNavigated(String script) { public void evaluateJavaScriptEvenIfNotYetNavigated(String script) {
mWebContents.evaluateJavaScript(script, null, true); mWebContents.evaluateJavaScript(script, null);
} }
//-------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------
......
...@@ -400,8 +400,7 @@ public class AwContentsTest extends AwTestBase { ...@@ -400,8 +400,7 @@ public class AwContentsTest extends AwTestBase {
awSettings.setJavaScriptEnabled(true); awSettings.setJavaScriptEnabled(true);
awContents.addPossiblyUnsafeJavascriptInterface( awContents.addPossiblyUnsafeJavascriptInterface(
new JavaScriptObject(callback), "bridge", null); new JavaScriptObject(callback), "bridge", null);
awContents.evaluateJavaScriptEvenIfNotYetNavigated( awContents.evaluateJavaScript("javascript:window.bridge.run();", null);
"javascript:window.bridge.run();");
} }
}); });
callback.waitForCallback(0, 1, WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS); callback.waitForCallback(0, 1, WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS);
......
...@@ -343,12 +343,11 @@ void WebContentsAndroid::DidStartNavigationTransitionForFrame(int64 frame_id) { ...@@ -343,12 +343,11 @@ void WebContentsAndroid::DidStartNavigationTransitionForFrame(int64 frame_id) {
void WebContentsAndroid::EvaluateJavaScript(JNIEnv* env, void WebContentsAndroid::EvaluateJavaScript(JNIEnv* env,
jobject obj, jobject obj,
jstring script, jstring script,
jobject callback, jobject callback) {
jboolean start_renderer) {
RenderViewHost* rvh = web_contents_->GetRenderViewHost(); RenderViewHost* rvh = web_contents_->GetRenderViewHost();
DCHECK(rvh); DCHECK(rvh);
if (start_renderer && !rvh->IsRenderViewLive()) { if (!rvh->IsRenderViewLive()) {
if (!static_cast<WebContentsImpl*>(web_contents_)-> if (!static_cast<WebContentsImpl*>(web_contents_)->
CreateRenderViewForInitialEmptyDocument()) { CreateRenderViewForInitialEmptyDocument()) {
LOG(ERROR) << "Failed to create RenderView in EvaluateJavaScript"; LOG(ERROR) << "Failed to create RenderView in EvaluateJavaScript";
......
...@@ -88,8 +88,7 @@ class CONTENT_EXPORT WebContentsAndroid ...@@ -88,8 +88,7 @@ class CONTENT_EXPORT WebContentsAndroid
void EvaluateJavaScript(JNIEnv* env, void EvaluateJavaScript(JNIEnv* env,
jobject obj, jobject obj,
jstring script, jstring script,
jobject callback, jobject callback);
jboolean start_renderer);
private: private:
RenderWidgetHostViewAndroid* GetRenderWidgetHostViewAndroid(); RenderWidgetHostViewAndroid* GetRenderWidgetHostViewAndroid();
......
...@@ -1214,18 +1214,7 @@ public class ContentViewCore ...@@ -1214,18 +1214,7 @@ public class ContentViewCore
*/ */
public void evaluateJavaScript(String script, JavaScriptCallback callback) { public void evaluateJavaScript(String script, JavaScriptCallback callback) {
assert mWebContents != null; assert mWebContents != null;
mWebContents.evaluateJavaScript(script, callback, false); mWebContents.evaluateJavaScript(script, callback);
}
/**
* Injects the passed Javascript code in the current page and evaluates it.
* If there is no page existing, a new one will be created.
*
* @param script The Javascript to execute.
*/
public void evaluateJavaScriptEvenIfNotYetNavigated(String script) {
assert mWebContents != null;
mWebContents.evaluateJavaScript(script, null, true);
} }
/** /**
......
...@@ -217,9 +217,8 @@ import org.chromium.content_public.browser.WebContents; ...@@ -217,9 +217,8 @@ import org.chromium.content_public.browser.WebContents;
} }
@Override @Override
public void evaluateJavaScript(String script, JavaScriptCallback callback, public void evaluateJavaScript(String script, JavaScriptCallback callback) {
boolean startRenderer) { nativeEvaluateJavaScript(mNativeWebContentsAndroid, script, callback);
nativeEvaluateJavaScript(mNativeWebContentsAndroid, script, callback, true);
} }
@CalledByNative @CalledByNative
...@@ -258,5 +257,5 @@ import org.chromium.content_public.browser.WebContents; ...@@ -258,5 +257,5 @@ import org.chromium.content_public.browser.WebContents;
private native void nativeBeginExitTransition(long nativeWebContentsAndroid, private native void nativeBeginExitTransition(long nativeWebContentsAndroid,
String cssSelector); String cssSelector);
private native void nativeEvaluateJavaScript(long nativeWebContentsAndroid, private native void nativeEvaluateJavaScript(long nativeWebContentsAndroid,
String script, JavaScriptCallback callback, boolean startRenderer); String script, JavaScriptCallback callback);
} }
...@@ -160,9 +160,7 @@ public interface WebContents { ...@@ -160,9 +160,7 @@ public interface WebContents {
* result will be json encoded and passed as the parameter, and the call * result will be json encoded and passed as the parameter, and the call
* will be made on the main thread. * will be made on the main thread.
* If no result is required, pass null. * If no result is required, pass null.
* @param startRenderer Tells whether to start Renderer or not for initial empty document
*/ */
public void evaluateJavaScript(String script, JavaScriptCallback callback, public void evaluateJavaScript(String script, JavaScriptCallback callback);
boolean startRenderer);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment