Chromium Code Reviews| Index: content/public/browser/render_view_host.h |
| diff --git a/content/public/browser/render_view_host.h b/content/public/browser/render_view_host.h |
| index 659737635acf9c0bdf62430e3adb28161420091b..9c0ec2c6651cffa05c785a84e3866b8514317474 100644 |
| --- a/content/public/browser/render_view_host.h |
| +++ b/content/public/browser/render_view_host.h |
| @@ -5,7 +5,7 @@ |
| #ifndef CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ |
| #define CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ |
| -#include "base/values.h" |
| +#include "base/callback_forward.h" |
| #include "content/common/content_export.h" |
| #include "content/public/browser/render_widget_host.h" |
| #include "content/public/common/page_zoom.h" |
| @@ -16,14 +16,14 @@ class FilePath; |
| class GURL; |
| struct WebDropData; |
| -namespace webkit_glue { |
| -struct WebPreferences; |
| -} |
| - |
| namespace gfx { |
| class Point; |
| } |
| +namespace base { |
| +class Value; |
| +} |
| + |
| namespace ui { |
| struct SelectedFileInfo; |
| } |
| @@ -34,6 +34,10 @@ struct WebMediaPlayerAction; |
| struct WebPluginAction; |
| } |
| +namespace webkit_glue { |
| +struct WebPreferences; |
| +} |
| + |
| namespace content { |
| class ChildProcessSecurityPolicy; |
| @@ -56,6 +60,8 @@ struct CustomContextMenuContext; |
| // WebContents (see WebContents for an example) but also as views, etc. |
| class CONTENT_EXPORT RenderViewHost : virtual public RenderWidgetHost { |
| public: |
| + typedef base::Callback<void(const base::Value*)> JavascriptResultCallback; |
| + |
| // Returns the RenderViewHost given its ID and the ID of its render process. |
| // Returns NULL if the IDs do not correspond to a live RenderViewHost. |
| static RenderViewHost* FromID(int render_process_id, int render_view_id); |
| @@ -171,13 +177,27 @@ class CONTENT_EXPORT RenderViewHost : virtual public RenderWidgetHost { |
| const string16& jscript) = 0; |
| // Runs some javascript within the context of a frame in the page. The result |
| - // is sent back via the notification EXECUTE_JAVASCRIPT_RESULT. |
| + // is sent back via the notification NOTIFICATION_EXECUTE_JAVASCRIPT_RESULT. |
| + // This returns an int, used as a key to identify the corresponding |
| + // notification. |
| + // OBSOLETE. Use ExecuteJavascriptInWebFrameCallbackResult instead. |
| virtual int ExecuteJavascriptInWebFrameNotifyResult( |
|
jam
2013/01/03 20:53:02
what's the plan for removing this? i.e. will it be
Avi (use Gerrit)
2013/01/03 21:01:53
Both will be done in followups. I'm working on bot
|
| const string16& frame_xpath, |
| const string16& jscript) = 0; |
| - virtual Value* ExecuteJavascriptAndGetValue(const string16& frame_xpath, |
| - const string16& jscript) = 0; |
| + // Runs some javascript within the context of a frame in the page. The result |
| + // is sent back via the provided callback. |
| + virtual void ExecuteJavascriptInWebFrameCallbackResult( |
| + const string16& frame_xpath, |
| + const string16& jscript, |
| + const JavascriptResultCallback& callback) = 0; |
| + |
| + // Runs some javascript within the context of a frame in the page. A nested |
| + // message loop is run to wait for the result, which is returned. THIS SHOULD |
| + // ONLY BE USED BY TESTS. TODO(avi): Move into a test file. |
| + virtual base::Value* ExecuteJavascriptAndGetValue( |
| + const string16& frame_xpath, |
| + const string16& jscript) = 0; |
| // Tells the renderer to perform the given action on the plugin located at |
| // the given point. |