summaryrefslogtreecommitdiffstats
path: root/chrome/browser/external_tab_container.cc
diff options
context:
space:
mode:
authorrafaelw@chromium.org <rafaelw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-28 03:09:53 +0000
committerrafaelw@chromium.org <rafaelw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-28 03:09:53 +0000
commit6dfed102065bda2e23541a5bf871b97258174fe3 (patch)
tree4b182c22eb74adcdd4ede2315062b991946b1005 /chrome/browser/external_tab_container.cc
parent26e607f289bc2f5ca82ee804969572606e1c0738 (diff)
downloadchromium_src-6dfed102065bda2e23541a5bf871b97258174fe3.zip
chromium_src-6dfed102065bda2e23541a5bf871b97258174fe3.tar.gz
chromium_src-6dfed102065bda2e23541a5bf871b97258174fe3.tar.bz2
Implement tabs.createWindow extension api call. Required: (a) new RVHDelegate & TabContentsDelegate method(s) CreateExtensionFunctionDispatcher() so that the dispatcher could be created with (an optional) browser attached to it, while avoiding having render_host depend on browser.h
BUG=11092: R=aa,mpComplete,darin,pkasting Review URL: http://codereview.chromium.org/79070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14710 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/external_tab_container.cc')
-rw-r--r--chrome/browser/external_tab_container.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/chrome/browser/external_tab_container.cc b/chrome/browser/external_tab_container.cc
index a66e2c2..8bcdead 100644
--- a/chrome/browser/external_tab_container.cc
+++ b/chrome/browser/external_tab_container.cc
@@ -8,6 +8,7 @@
#include "base/win_util.h"
#include "chrome/browser/automation/automation_provider.h"
#include "chrome/browser/browser.h"
+#include "chrome/browser/extensions/extension_function_dispatcher.h"
#include "chrome/browser/load_notification_details.h"
#include "chrome/browser/profile.h"
#include "chrome/browser/tab_contents/provisional_load_details.h"
@@ -162,7 +163,7 @@ void ExternalTabContainer::OpenURLFromTab(TabContents* source,
break;
default:
break;
- }
+ }
}
void ExternalTabContainer::NavigationStateChanged(const TabContents* source,
@@ -398,6 +399,12 @@ bool ExternalTabContainer::IsExternalTabContainer(HWND window) {
return _wcsicmp(class_name.c_str(), chrome::kExternalTabWindowClass) == 0;
}
+ExtensionFunctionDispatcher* ExternalTabContainer::
+ CreateExtensionFunctionDispatcher(RenderViewHost* render_view_host,
+ const std::string& extension_id) {
+ return new ExtensionFunctionDispatcher(render_view_host, NULL, extension_id);
+}
+
// static
ExternalTabContainer* ExternalTabContainer::GetContainerForTab(
HWND tab_window) {