summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host
diff options
context:
space:
mode:
authorrafaelw@chromium.org <rafaelw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-12 14:59:32 +0000
committerrafaelw@chromium.org <rafaelw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-12 14:59:32 +0000
commitc6619189d9d7176f62754fce548cdcedf8831bcf (patch)
treebfec95efed25eadfa1bd3e4f09e9cda686e09cc0 /chrome/browser/renderer_host
parentc07e97c914b3defcbf02445a650f01aa57ec04aa (diff)
downloadchromium_src-c6619189d9d7176f62754fce548cdcedf8831bcf.zip
chromium_src-c6619189d9d7176f62754fce548cdcedf8831bcf.tar.gz
chromium_src-c6619189d9d7176f62754fce548cdcedf8831bcf.tar.bz2
FormatErrorMessage() functions are now publicly available from ExtensionErrorUtils.
ExtensionTabsModule implements a bunch of error_messages. Extension Calls now always deliver a response to the calling context and route error messages if any to the window.console.error log. Review URL: http://codereview.chromium.org/113105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15853 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host')
-rw-r--r--chrome/browser/renderer_host/render_view_host.cc14
-rw-r--r--chrome/browser/renderer_host/render_view_host.h7
2 files changed, 14 insertions, 7 deletions
diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc
index 4900f93..0083ad9 100644
--- a/chrome/browser/renderer_host/render_view_host.cc
+++ b/chrome/browser/renderer_host/render_view_host.cc
@@ -1384,16 +1384,20 @@ void RenderViewHost::ForwardMessageFromExternalHost(const std::string& message,
void RenderViewHost::OnExtensionRequest(const std::string& name,
const std::string& args,
- int callback_id) {
+ int request_id,
+ bool has_callback) {
// TODO(aa): Here is where we can check that this renderer was supposed to be
// able to call extension APIs.
DCHECK(extension_function_dispatcher_.get());
- extension_function_dispatcher_->HandleRequest(name, args, callback_id);
+ extension_function_dispatcher_->HandleRequest(name, args, request_id,
+ has_callback);
}
-void RenderViewHost::SendExtensionResponse(int callback_id,
- const std::string& response) {
- Send(new ViewMsg_ExtensionResponse(routing_id(), callback_id, response));
+void RenderViewHost::SendExtensionResponse(int request_id, bool success,
+ const std::string& response,
+ const std::string& error) {
+ Send(new ViewMsg_ExtensionResponse(routing_id(), request_id, success,
+ response, error));
}
void RenderViewHost::OnExtensionPostMessage(
diff --git a/chrome/browser/renderer_host/render_view_host.h b/chrome/browser/renderer_host/render_view_host.h
index 1e7bc4f..25ff89b 100644
--- a/chrome/browser/renderer_host/render_view_host.h
+++ b/chrome/browser/renderer_host/render_view_host.h
@@ -421,7 +421,10 @@ class RenderViewHost : public RenderWidgetHost {
// Creates a new RenderWidget with the given route id.
void CreateNewWidget(int route_id, bool activatable);
- void SendExtensionResponse(int callback_id, const std::string& response);
+ // Senf the response to an extension api call.
+ void SendExtensionResponse(int request_id, bool success,
+ const std::string& response,
+ const std::string& error);
protected:
// RenderWidgetHost protected overrides.
@@ -545,7 +548,7 @@ class RenderViewHost : public RenderWidgetHost {
const std::wstring& value);
void OnExtensionRequest(const std::string& name, const std::string& args,
- int callback_id);
+ int request_id, bool has_callback);
void OnExtensionPostMessage(int port_id, const std::string& message);
// Helper function to send a navigation message. If a cross-site request is