summaryrefslogtreecommitdiffstats
path: root/content/renderer
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-04 22:21:44 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-04 22:21:44 +0000
commitc6b7ef3ffc6286e3d44c1147c8fc25bf1d55fa39 (patch)
tree5fa040241664e903f1bbdc85702cbc55fa3be899 /content/renderer
parent851a0f2d956ea90145defbbc06850e7b05a7cce5 (diff)
downloadchromium_src-c6b7ef3ffc6286e3d44c1147c8fc25bf1d55fa39.zip
chromium_src-c6b7ef3ffc6286e3d44c1147c8fc25bf1d55fa39.tar.gz
chromium_src-c6b7ef3ffc6286e3d44c1147c8fc25bf1d55fa39.tar.bz2
Get rid of web_ui_bindings.h include from Chrome's ExternalHostBindings. The ChromeFrame object wasn't using anything from that class except for storing an IPC sender and a route.
BUG=98716 Review URL: http://codereview.chromium.org/8139004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103996 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer')
-rw-r--r--content/renderer/render_view.cc4
-rw-r--r--content/renderer/web_ui_bindings.cc15
-rw-r--r--content/renderer/web_ui_bindings.h29
3 files changed, 16 insertions, 32 deletions
diff --git a/content/renderer/render_view.cc b/content/renderer/render_view.cc
index dde2992..5248e3e 100644
--- a/content/renderer/render_view.cc
+++ b/content/renderer/render_view.cc
@@ -2477,8 +2477,6 @@ void RenderView::didClearWindowObject(WebFrame* frame) {
if (BindingsPolicy::is_web_ui_enabled(enabled_bindings_) &&
(frame_url.SchemeIs(chrome::kChromeUIScheme) ||
frame_url.SchemeIs(chrome::kDataScheme))) {
- GetWebUIBindings()->set_message_sender(this);
- GetWebUIBindings()->set_routing_id(routing_id_);
GetWebUIBindings()->BindToJavascript(frame, "chrome");
}
}
@@ -3091,7 +3089,7 @@ GURL RenderView::GetAlternateErrorPageURL(const GURL& failed_url,
WebUIBindings* RenderView::GetWebUIBindings() {
if (!web_ui_bindings_.get()) {
- web_ui_bindings_.reset(new WebUIBindings());
+ web_ui_bindings_.reset(new WebUIBindings(this, routing_id_));
}
return web_ui_bindings_.get();
}
diff --git a/content/renderer/web_ui_bindings.cc b/content/renderer/web_ui_bindings.cc
index 97037a4..579582e 100644
--- a/content/renderer/web_ui_bindings.cc
+++ b/content/renderer/web_ui_bindings.cc
@@ -43,22 +43,21 @@ Value* CreateValueFromCppVariant(const CppVariant& value) {
} // namespace
-DOMBoundBrowserObject::DOMBoundBrowserObject()
- : sender_(NULL),
- routing_id_(0) {
+DOMBoundBrowserObject::DOMBoundBrowserObject() {
}
DOMBoundBrowserObject::~DOMBoundBrowserObject() {
STLDeleteContainerPointers(properties_.begin(), properties_.end());
}
-WebUIBindings::WebUIBindings() {
- BindMethod("send", &WebUIBindings::send);
+WebUIBindings::WebUIBindings(IPC::Message::Sender* sender, int routing_id)
+ : sender_(sender), routing_id_(routing_id) {
+ BindMethod("send", &WebUIBindings::Send);
}
WebUIBindings::~WebUIBindings() {}
-void WebUIBindings::send(const CppArgumentList& args, CppVariant* result) {
+void WebUIBindings::Send(const CppArgumentList& args, CppVariant* result) {
// We expect at least a string message identifier, and optionally take
// an object parameter. If we get anything else we bail.
if (args.size() < 1 || args.size() > 2)
@@ -89,8 +88,8 @@ void WebUIBindings::send(const CppArgumentList& args, CppVariant* result) {
source_url = frame->document().url();
// Send the message up to the browser.
- sender()->Send(new ViewHostMsg_WebUISend(
- routing_id(),
+ sender_->Send(new ViewHostMsg_WebUISend(
+ routing_id_,
source_url,
message,
*(static_cast<ListValue*>(content.get()))));
diff --git a/content/renderer/web_ui_bindings.h b/content/renderer/web_ui_bindings.h
index b8f8c81..5d83432 100644
--- a/content/renderer/web_ui_bindings.h
+++ b/content/renderer/web_ui_bindings.h
@@ -18,28 +18,10 @@ class DOMBoundBrowserObject : public CppBoundClass {
CONTENT_EXPORT DOMBoundBrowserObject();
CONTENT_EXPORT virtual ~DOMBoundBrowserObject();
- // Set the message channel back to the browser.
- void set_message_sender(IPC::Message::Sender* sender) {
- sender_ = sender;
- }
-
- // Set the routing id for messages back to the browser.
- void set_routing_id(int routing_id) {
- routing_id_ = routing_id;
- }
-
- IPC::Message::Sender* sender() { return sender_; }
- int routing_id() { return routing_id_; }
-
// Sets a property with the given name and value.
void SetProperty(const std::string& name, const std::string& value);
private:
- // Our channel back to the browser is a message sender
- // and routing id.
- IPC::Message::Sender* sender_;
- int routing_id_;
-
// The list of properties that have been set. We keep track of this so we
// can free them on destruction.
typedef std::vector<CppVariant*> PropertyList;
@@ -57,12 +39,17 @@ class DOMBoundBrowserObject : public CppBoundClass {
// delegate.
class WebUIBindings : public DOMBoundBrowserObject {
public:
- WebUIBindings();
+ WebUIBindings(IPC::Message::Sender* sender,
+ int routing_id);
virtual ~WebUIBindings();
- // The send() function provided to Javascript.
- void send(const CppArgumentList& args, CppVariant* result);
private:
+ // The send() function provided to Javascript.
+ void Send(const CppArgumentList& args, CppVariant* result);
+
+ IPC::Message::Sender* sender_;
+ int routing_id_;
+
DISALLOW_COPY_AND_ASSIGN(WebUIBindings);
};