Chromium Code Reviews| Index: content/public/browser/render_frame_host.h |
| diff --git a/content/public/browser/render_frame_host.h b/content/public/browser/render_frame_host.h |
| index 3097ff11616af0f9efcc8b5401c0f1d624d3d948..e47441df9aebe577a4ae10dbc6e3e0dbf606797c 100644 |
| --- a/content/public/browser/render_frame_host.h |
| +++ b/content/public/browser/render_frame_host.h |
| @@ -35,6 +35,11 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, |
| // Returns nullptr if the IDs do not correspond to a live RenderFrameHost. |
| static RenderFrameHost* FromID(int render_process_id, int render_frame_id); |
| + // Globally allows for injecting JavaScript into the main world. This feature |
| + // is present only to support Android WebView and must not be used in other |
| + // configurations. |
| + static void AllowInjectingJavaScriptForAndroidWebView(); |
|
jochen (gone - plz use gerrit)
2015/07/16 04:53:17
Richard & John, ptal esp. at this method
There is
Torne
2015/07/16 12:41:57
This seems reasonable to me.
|
| + |
| ~RenderFrameHost() override {} |
| // Returns the route id for this frame. |
| @@ -74,17 +79,24 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, |
| // Runs some JavaScript in this frame's context. If a callback is provided, it |
| // will be used to return the result, when the result is available. |
| + // This API can only be called on chrome:// or chrome-devtools:// URLs. |
| typedef base::Callback<void(const base::Value*)> JavaScriptResultCallback; |
| virtual void ExecuteJavaScript(const base::string16& javascript) = 0; |
| virtual void ExecuteJavaScript(const base::string16& javascript, |
| const JavaScriptResultCallback& callback) = 0; |
| + |
| + // Runs some JavaScript in an isolated world of top of this frame's context. |
| virtual void ExecuteJavaScriptInIsolatedWorld( |
| const base::string16& javascript, |
| const JavaScriptResultCallback& callback, |
| int world_id) = 0; |
| - // ONLY FOR TESTS: Same as above but adds a fake UserGestureIndicator around |
| - // execution. (crbug.com/408426) |
| + // ONLY FOR TESTS: Same as above but without restrictions. Optionally, adds a |
| + // fake UserGestureIndicator around execution. (crbug.com/408426) |
| + virtual void ExecuteJavaScriptForTests(const base::string16& javascript) = 0; |
| + virtual void ExecuteJavaScriptForTests( |
| + const base::string16& javascript, |
| + const JavaScriptResultCallback& callback) = 0; |
| virtual void ExecuteJavaScriptWithUserGestureForTests( |
| const base::string16& javascript) = 0; |