diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-14 05:43:53 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-14 05:43:53 +0000 |
commit | 7b291f9c1394495724ddd81306e982e840075c08 (patch) | |
tree | fa2a2ef45f1b17018e716101395300da731d8599 /chrome/browser/renderer_host | |
parent | cc4219ad7dd27008da3db5f0e23da9a6ab2f0387 (diff) | |
download | chromium_src-7b291f9c1394495724ddd81306e982e840075c08.zip chromium_src-7b291f9c1394495724ddd81306e982e840075c08.tar.gz chromium_src-7b291f9c1394495724ddd81306e982e840075c08.tar.bz2 |
Implementation of getBackgroundPage(), getToolstrips(), and
getTabContentses().
This lands http://codereview.chromium.org/159067.
Raf, the only thing you need to look at is the changes to extensions_process_bindings.js and extension_api.json.
BUG=13577
TEST=Browser tests added
Review URL: http://codereview.chromium.org/164458
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23422 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host')
-rw-r--r-- | chrome/browser/renderer_host/render_view_host.cc | 8 | ||||
-rw-r--r-- | chrome/browser/renderer_host/render_view_host.h | 3 | ||||
-rw-r--r-- | chrome/browser/renderer_host/render_view_host_delegate.h | 8 |
3 files changed, 18 insertions, 1 deletions
diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc index b94d72b..49c4821 100644 --- a/chrome/browser/renderer_host/render_view_host.cc +++ b/chrome/browser/renderer_host/render_view_host.cc @@ -223,7 +223,9 @@ bool RenderViewHost::CreateRenderView() { // If it's enabled, tell the renderer to set up the Javascript bindings for // sending messages back to the browser. Send(new ViewMsg_AllowBindings(routing_id(), enabled_bindings_)); - + UpdateBrowserWindowId(delegate_->GetBrowserWindowID()); + Send(new ViewMsg_NotifyRenderViewType(routing_id(), + delegate_->GetRenderViewType())); // Let our delegate know that we created a RenderView. delegate_->RenderViewCreated(this); process()->ViewCreated(); @@ -1641,3 +1643,7 @@ void RenderViewHost::ResetModalDialogEvent() { if (--modal_dialog_count_ == 0) modal_dialog_event_->Reset(); } + +void RenderViewHost::UpdateBrowserWindowId(int window_id) { + Send(new ViewMsg_UpdateBrowserWindowId(routing_id(), window_id)); +} diff --git a/chrome/browser/renderer_host/render_view_host.h b/chrome/browser/renderer_host/render_view_host.h index 959b99b..71a15fe 100644 --- a/chrome/browser/renderer_host/render_view_host.h +++ b/chrome/browser/renderer_host/render_view_host.h @@ -426,6 +426,9 @@ class RenderViewHost : public RenderWidgetHost, void SignalModalDialogEvent(); void ResetModalDialogEvent(); + // Tell renderer which browser window it is being attached to. + void UpdateBrowserWindowId(int window_id); + void set_in_inspect_element_mode(bool enabled) { in_inspect_element_mode_ = enabled; } diff --git a/chrome/browser/renderer_host/render_view_host_delegate.h b/chrome/browser/renderer_host/render_view_host_delegate.h index 564a6e80..d9a7d9c 100644 --- a/chrome/browser/renderer_host/render_view_host_delegate.h +++ b/chrome/browser/renderer_host/render_view_host_delegate.h @@ -10,6 +10,7 @@ #include "base/basictypes.h" #include "base/string16.h" +#include "chrome/common/view_types.h" #include "net/base/load_states.h" #include "webkit/glue/window_open_disposition.h" @@ -373,6 +374,13 @@ class RenderViewHostDelegate { // not a TabContents, returns NULL. virtual TabContents* GetAsTabContents(); + // Return id number of browser window which this object is attached to. If no + // browser window is attached to, just return -1. + virtual int GetBrowserWindowID() const = 0; + + // Return type of RenderView which is attached with this object. + virtual ViewType::Type GetRenderViewType() const = 0; + // The RenderView is being constructed (message sent to the renderer process // to construct a RenderView). Now is a good time to send other setup events // to the RenderView. This precedes any other commands to the RenderView. |