summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-23 19:08:02 +0000
committerjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-23 19:08:02 +0000
commit63fb3f856dda398cc82782a6be635a8c55df4f85 (patch)
tree05a1a4accbf5fbb723fc428091d62b2928192ba1
parentbff69fd91bdab01463cb3505ccbbba51cd373d4b (diff)
downloadchromium_src-63fb3f856dda398cc82782a6be635a8c55df4f85.zip
chromium_src-63fb3f856dda398cc82782a6be635a8c55df4f85.tar.gz
chromium_src-63fb3f856dda398cc82782a6be635a8c55df4f85.tar.bz2
Allow TabContentsDelegate classes to specify whether InfoBars are enabled.
Allow ChromeFrame to pass infobar enabled parameter to ExternalTabContainer. BUG=2444936 Patch contributed by ericdingle@google.com Original review at http://codereview.chromium.org/890005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42366 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/automation/automation_provider_win.cc2
-rw-r--r--chrome/browser/external_tab_container.cc14
-rw-r--r--chrome/browser/external_tab_container.h8
-rw-r--r--chrome/browser/tab_contents/tab_contents.cc14
-rw-r--r--chrome/browser/tab_contents/tab_contents_delegate.h3
-rw-r--r--chrome/test/automation/automation_messages.h1
-rw-r--r--chrome_frame/chrome_active_document.cc3
-rw-r--r--chrome_frame/chrome_frame_activex.cc2
-rw-r--r--chrome_frame/chrome_frame_automation.cc25
-rw-r--r--chrome_frame/chrome_frame_automation.h7
-rw-r--r--chrome_frame/chrome_frame_npapi.cc2
-rw-r--r--chrome_frame/chrome_frame_npapi_unittest.cc14
-rw-r--r--chrome_frame/chrome_frame_plugin.h16
-rw-r--r--chrome_frame/test/automation_client_mock.cc73
-rw-r--r--chrome_frame/test/chrome_frame_automation_mock.h26
15 files changed, 160 insertions, 50 deletions
diff --git a/chrome/browser/automation/automation_provider_win.cc b/chrome/browser/automation/automation_provider_win.cc
index 9539498..c352018 100644
--- a/chrome/browser/automation/automation_provider_win.cc
+++ b/chrome/browser/automation/automation_provider_win.cc
@@ -325,7 +325,7 @@ void AutomationProvider::CreateExternalTab(
external_tab_container->Init(profile, settings.parent, settings.dimensions,
settings.style, settings.load_requests_via_automation,
settings.handle_top_level_requests, NULL, settings.initial_url,
- settings.referrer);
+ settings.referrer, settings.infobars_enabled);
if (AddExternalTab(external_tab_container)) {
TabContents* tab_contents = external_tab_container->tab_contents();
diff --git a/chrome/browser/external_tab_container.cc b/chrome/browser/external_tab_container.cc
index e6d1211..4c46493 100644
--- a/chrome/browser/external_tab_container.cc
+++ b/chrome/browser/external_tab_container.cc
@@ -54,7 +54,8 @@ ExternalTabContainer::ExternalTabContainer(
external_method_factory_(this),
enabled_extension_automation_(false),
waiting_for_unload_event_(false),
- pending_(false) {
+ pending_(false),
+ infobars_enabled_(true) {
}
ExternalTabContainer::~ExternalTabContainer() {
@@ -69,7 +70,8 @@ bool ExternalTabContainer::Init(Profile* profile,
bool handle_top_level_requests,
TabContents* existing_contents,
const GURL& initial_url,
- const GURL& referrer) {
+ const GURL& referrer,
+ bool infobars_enabled) {
if (IsWindow()) {
NOTREACHED();
return false;
@@ -77,6 +79,7 @@ bool ExternalTabContainer::Init(Profile* profile,
load_requests_via_automation_ = load_requests_via_automation;
handle_top_level_requests_ = handle_top_level_requests;
+ infobars_enabled_ = infobars_enabled;
set_window_style(WS_POPUP | WS_CLIPCHILDREN);
views::WidgetWin::Init(NULL, bounds);
@@ -351,7 +354,8 @@ void ExternalTabContainer::AddNewContents(TabContents* source,
handle_top_level_requests_,
new_contents,
GURL(),
- GURL());
+ GURL(),
+ true);
if (result) {
uintptr_t cookie = reinterpret_cast<uintptr_t>(new_container.get());
@@ -379,6 +383,10 @@ void ExternalTabContainer::TabContentsCreated(TabContents* new_contents) {
RegisterRenderViewHostForAutomation(rvh, true);
}
+bool ExternalTabContainer::infobars_enabled() {
+ return infobars_enabled_;
+}
+
void ExternalTabContainer::ActivateContents(TabContents* contents) {
}
diff --git a/chrome/browser/external_tab_container.h b/chrome/browser/external_tab_container.h
index 123d13c..dcf30ee 100644
--- a/chrome/browser/external_tab_container.h
+++ b/chrome/browser/external_tab_container.h
@@ -65,7 +65,8 @@ class ExternalTabContainer : public TabContentsDelegate,
bool handle_top_level_requests,
TabContents* existing_tab_contents,
const GURL& initial_url,
- const GURL& referrer);
+ const GURL& referrer,
+ bool infobars_enabled);
// Unhook the keystroke listener and notify about the closing TabContents.
// This function gets called from three places, which is fine.
@@ -202,6 +203,8 @@ class ExternalTabContainer : public TabContentsDelegate,
virtual void TabContentsCreated(TabContents* new_contents);
+ virtual bool infobars_enabled();
+
protected:
// Overridden from views::WidgetWin:
virtual LRESULT OnCreate(LPCREATESTRUCT create_struct);
@@ -325,6 +328,9 @@ class ExternalTabContainer : public TabContentsDelegate,
// from the host.
bool pending_;
+ // Set to true if the ExternalTabContainer if infobars should be enabled.
+ bool infobars_enabled_;
+
DISALLOW_COPY_AND_ASSIGN(ExternalTabContainer);
};
diff --git a/chrome/browser/tab_contents/tab_contents.cc b/chrome/browser/tab_contents/tab_contents.cc
index c8d3e95..33d631b 100644
--- a/chrome/browser/tab_contents/tab_contents.cc
+++ b/chrome/browser/tab_contents/tab_contents.cc
@@ -951,6 +951,11 @@ bool TabContents::FocusLocationBarByDefault() {
}
void TabContents::AddInfoBar(InfoBarDelegate* delegate) {
+ if (delegate_ && !delegate_->infobars_enabled()) {
+ delegate->InfoBarClosed();
+ return;
+ }
+
// Look through the existing InfoBarDelegates we have for a match. If we've
// already got one that matches, then we don't add the new one.
for (int i = 0; i < infobar_delegate_count(); ++i) {
@@ -977,6 +982,10 @@ void TabContents::AddInfoBar(InfoBarDelegate* delegate) {
}
void TabContents::RemoveInfoBar(InfoBarDelegate* delegate) {
+ if (delegate_ && !delegate_->infobars_enabled()) {
+ return;
+ }
+
std::vector<InfoBarDelegate*>::iterator it =
find(infobar_delegates_.begin(), infobar_delegates_.end(), delegate);
if (it != infobar_delegates_.end()) {
@@ -997,6 +1006,11 @@ void TabContents::RemoveInfoBar(InfoBarDelegate* delegate) {
void TabContents::ReplaceInfoBar(InfoBarDelegate* old_delegate,
InfoBarDelegate* new_delegate) {
+ if (delegate_ && !delegate_->infobars_enabled()) {
+ new_delegate->InfoBarClosed();
+ return;
+ }
+
std::vector<InfoBarDelegate*>::iterator it =
find(infobar_delegates_.begin(), infobar_delegates_.end(), old_delegate);
DCHECK(it != infobar_delegates_.end());
diff --git a/chrome/browser/tab_contents/tab_contents_delegate.h b/chrome/browser/tab_contents/tab_contents_delegate.h
index 25653f4..9a84f83 100644
--- a/chrome/browser/tab_contents/tab_contents_delegate.h
+++ b/chrome/browser/tab_contents/tab_contents_delegate.h
@@ -283,6 +283,9 @@ class TabContentsDelegate : public AutomationResourceRoutingDelegate {
// typically happens when popups are created.
virtual void TabContentsCreated(TabContents* new_contents) {}
+ // Returns whether infobars are enabled. Overrideable by child classes.
+ virtual bool infobars_enabled() { return true; }
+
protected:
~TabContentsDelegate() {}
};
diff --git a/chrome/test/automation/automation_messages.h b/chrome/test/automation/automation_messages.h
index 42d4731..bb8789f 100644
--- a/chrome/test/automation/automation_messages.h
+++ b/chrome/test/automation/automation_messages.h
@@ -356,6 +356,7 @@ struct ExternalTabSettings {
bool handle_top_level_requests;
GURL initial_url;
GURL referrer;
+ bool infobars_enabled;
};
// Traits for ExternalTabSettings structure to pack/unpack.
diff --git a/chrome_frame/chrome_active_document.cc b/chrome_frame/chrome_active_document.cc
index fe9499d..dbc2b8b 100644
--- a/chrome_frame/chrome_active_document.cc
+++ b/chrome_frame/chrome_active_document.cc
@@ -1004,7 +1004,8 @@ bool ChromeActiveDocument::LaunchUrl(const std::wstring& url,
automation_client_->SetUrlFetcher(&url_fetcher_);
- if (InitializeAutomation(GetHostProcessName(false), L"", IsIEInPrivate()))
+ if (InitializeAutomation(GetHostProcessName(false), L"", IsIEInPrivate(),
+ false))
return true;
return false;
diff --git a/chrome_frame/chrome_frame_activex.cc b/chrome_frame/chrome_frame_activex.cc
index a88c5f1..f982072 100644
--- a/chrome_frame/chrome_frame_activex.cc
+++ b/chrome_frame/chrome_frame_activex.cc
@@ -447,7 +447,7 @@ HRESULT ChromeFrameActivex::IOleObject_SetClientSite(
url_fetcher_.set_frame_busting(!is_privileged_);
automation_client_->SetUrlFetcher(&url_fetcher_);
if (!InitializeAutomation(profile_name, chrome_extra_arguments,
- IsIEInPrivate())) {
+ IsIEInPrivate(), true)) {
return E_FAIL;
}
}
diff --git a/chrome_frame/chrome_frame_automation.cc b/chrome_frame/chrome_frame_automation.cc
index 785e3e5..b170908 100644
--- a/chrome_frame/chrome_frame_automation.cc
+++ b/chrome_frame/chrome_frame_automation.cc
@@ -450,13 +450,10 @@ ChromeFrameAutomationClient::~ChromeFrameAutomationClient() {
bool ChromeFrameAutomationClient::Initialize(
ChromeFrameDelegate* chrome_frame_delegate,
- int automation_server_launch_timeout,
- bool perform_version_check,
- const std::wstring& profile_name,
- const std::wstring& extra_chrome_arguments,
- bool incognito) {
+ const ChromeFrameLaunchParams& chrome_launch_params) {
DCHECK(!IsWindow());
chrome_frame_delegate_ = chrome_frame_delegate;
+ chrome_launch_params_ = chrome_launch_params;
ui_thread_id_ = PlatformThread::CurrentId();
#ifndef NDEBUG
// In debug mode give more time to work with a debugger.
@@ -464,10 +461,11 @@ bool ChromeFrameAutomationClient::Initialize(
// Don't use INFINITE (which is -1) or even MAXINT since we will convert
// from milliseconds to microseconds when stored in a base::TimeDelta,
// thus * 1000. An hour should be enough.
- automation_server_launch_timeout = 60 * 60 * 1000;
+ chrome_launch_params_.automation_server_launch_timeout = 60 * 60 * 1000;
} else {
- DCHECK_LT(automation_server_launch_timeout, MAXINT / 2000);
- automation_server_launch_timeout *= 2;
+ DCHECK_LT(chrome_launch_params_.automation_server_launch_timeout,
+ MAXINT / 2000);
+ chrome_launch_params_.automation_server_launch_timeout *= 2;
}
#endif // NDEBUG
@@ -490,13 +488,9 @@ bool ChromeFrameAutomationClient::Initialize(
// InitializeComplete is called successfully.
init_state_ = INITIALIZING;
- chrome_launch_params_.automation_server_launch_timeout =
- automation_server_launch_timeout;
- chrome_launch_params_.profile_name = profile_name;
- chrome_launch_params_.extra_chrome_arguments = extra_chrome_arguments;
- chrome_launch_params_.perform_version_check = perform_version_check;
- chrome_launch_params_.url = navigate_after_initialization_ ? GURL() : url_;
- chrome_launch_params_.incognito_mode = incognito;
+ if (navigate_after_initialization_) {
+ chrome_launch_params_.url = url_;
+ }
proxy_factory_->GetAutomationServer(
static_cast<ProxyFactory::LaunchDelegate*>(this),
@@ -841,6 +835,7 @@ void ChromeFrameAutomationClient::CreateExternalTab() {
handle_top_level_requests_,
chrome_launch_params_.url,
chrome_launch_params_.referrer,
+ !chrome_launch_params_.is_widget_mode // Infobars disabled in widget mode.
};
THREAD_SAFE_UMA_HISTOGRAM_CUSTOM_COUNTS(
diff --git a/chrome_frame/chrome_frame_automation.h b/chrome_frame/chrome_frame_automation.h
index f01d1b4..bd839a4 100644
--- a/chrome_frame/chrome_frame_automation.h
+++ b/chrome_frame/chrome_frame_automation.h
@@ -88,6 +88,7 @@ struct ChromeFrameLaunchParams {
std::wstring extra_chrome_arguments;
bool perform_version_check;
bool incognito_mode;
+ bool is_widget_mode;
};
// We must create and destroy automation proxy in a thread with a message loop.
@@ -158,11 +159,7 @@ class ChromeFrameAutomationClient
// Called from UI thread.
virtual bool Initialize(ChromeFrameDelegate* chrome_frame_delegate,
- int automation_server_launch_timeout,
- bool perform_version_check,
- const std::wstring& profile_name,
- const std::wstring& extra_chrome_arguments,
- bool incognito);
+ const ChromeFrameLaunchParams& chrome_launch_params);
void Uninitialize();
virtual bool InitiateNavigation(const std::string& url,
diff --git a/chrome_frame/chrome_frame_npapi.cc b/chrome_frame/chrome_frame_npapi.cc
index 573d32e..6fbd76a 100644
--- a/chrome_frame/chrome_frame_npapi.cc
+++ b/chrome_frame/chrome_frame_npapi.cc
@@ -320,7 +320,7 @@ bool ChromeFrameNPAPI::Initialize(NPMIMEType mime_type, NPP instance,
// TODO(stoyan): Ask host for specific interface whether to honor
// host's in-private mode.
return InitializeAutomation(profile_name, extra_arguments,
- GetBrowserIncognitoMode());
+ GetBrowserIncognitoMode(), true);
}
void ChromeFrameNPAPI::Uninitialize() {
diff --git a/chrome_frame/chrome_frame_npapi_unittest.cc b/chrome_frame/chrome_frame_npapi_unittest.cc
index b30d5e8..4d03b00 100644
--- a/chrome_frame/chrome_frame_npapi_unittest.cc
+++ b/chrome_frame/chrome_frame_npapi_unittest.cc
@@ -20,6 +20,7 @@ namespace {
using ::testing::_;
using ::testing::Eq;
+using ::testing::Field;
using ::testing::Invoke;
using ::testing::Return;
using ::testing::StrEq;
@@ -80,9 +81,7 @@ class MockNPAPI: public ChromeFrameNPAPI {
class MockAutomationClient: public ChromeFrameAutomationClient {
public:
- MOCK_METHOD6(Initialize, bool(ChromeFrameDelegate*, int, bool,
- const std::wstring&, const std::wstring&,
- bool));
+ MOCK_METHOD2(Initialize, bool(ChromeFrameDelegate*, ChromeFrameLaunchParams));
MOCK_METHOD1(SetEnableExtensionAutomation,
void(const std::vector<std::string>&)); // NOLINT
};
@@ -127,7 +126,14 @@ class TestNPAPIPrivilegedApi: public ::testing::Test {
EXPECT_CALL(*mock_proxy, Initialize(_, _)).WillRepeatedly(Return(false));
EXPECT_CALL(*mock_automation,
- Initialize(_, _, true, StrEq(profile_name), StrEq(extra_args), false))
+ Initialize(_, AllOf(
+ Field(&ChromeFrameLaunchParams::perform_version_check, true),
+ Field(&ChromeFrameLaunchParams::profile_name,
+ StrEq(profile_name)),
+ Field(&ChromeFrameLaunchParams::extra_chrome_arguments,
+ StrEq(extra_args)),
+ Field(&ChromeFrameLaunchParams::incognito_mode, is_incognito),
+ Field(&ChromeFrameLaunchParams::is_widget_mode, true))))
.WillOnce(Return(true));
if (expect_privilege_check) {
diff --git a/chrome_frame/chrome_frame_plugin.h b/chrome_frame/chrome_frame_plugin.h
index 078a611..641d7a7 100644
--- a/chrome_frame/chrome_frame_plugin.h
+++ b/chrome_frame/chrome_frame_plugin.h
@@ -51,14 +51,22 @@ END_MSG_MAP()
bool InitializeAutomation(const std::wstring& profile_name,
const std::wstring& extra_chrome_arguments,
- bool incognito) {
+ bool incognito, bool is_widget_mode) {
DCHECK(IsValid());
// We don't want to do incognito when privileged, since we're
// running in browser chrome or some other privileged context.
bool incognito_mode = !is_privileged_ && incognito;
- return automation_client_->Initialize(this, kCommandExecutionTimeout, true,
- profile_name, extra_chrome_arguments,
- incognito_mode);
+ ChromeFrameLaunchParams chrome_launch_params = {
+ kCommandExecutionTimeout,
+ GURL(),
+ GURL(),
+ profile_name,
+ extra_chrome_arguments,
+ true,
+ incognito_mode,
+ is_widget_mode
+ };
+ return automation_client_->Initialize(this, chrome_launch_params);
}
// ChromeFrameDelegate implementation
diff --git a/chrome_frame/test/automation_client_mock.cc b/chrome_frame/test/automation_client_mock.cc
index f699635..b64a7cb 100644
--- a/chrome_frame/test/automation_client_mock.cc
+++ b/chrome_frame/test/automation_client_mock.cc
@@ -100,7 +100,17 @@ TEST(CFACWithChrome, CreateTooFast) {
.Times(1)
.WillOnce(QUIT_LOOP(loop));
- EXPECT_TRUE(client->Initialize(&cfd, timeout, false, profile, L"", false));
+ ChromeFrameLaunchParams cfp = {
+ timeout,
+ GURL(),
+ GURL(),
+ profile,
+ L"",
+ false,
+ false,
+ false
+ };
+ EXPECT_TRUE(client->Initialize(&cfd, cfp));
loop.RunFor(10);
client->Uninitialize();
}
@@ -125,7 +135,17 @@ TEST(CFACWithChrome, CreateNotSoFast) {
EXPECT_CALL(cfd, OnAutomationServerLaunchFailed(_, _))
.Times(0);
- EXPECT_TRUE(client->Initialize(&cfd, timeout, false, profile, L"", false));
+ ChromeFrameLaunchParams cfp = {
+ timeout,
+ GURL(),
+ GURL(),
+ profile,
+ L"",
+ false,
+ false,
+ false
+ };
+ EXPECT_TRUE(client->Initialize(&cfd, cfp));
loop.RunFor(11);
client->Uninitialize();
@@ -165,7 +185,17 @@ TEST(CFACWithChrome, NavigateOk) {
.WillOnce(QUIT_LOOP(loop));
}
- EXPECT_TRUE(client->Initialize(&cfd, timeout, false, profile, L"", false));
+ ChromeFrameLaunchParams cfp = {
+ timeout,
+ GURL(),
+ GURL(),
+ profile,
+ L"",
+ false,
+ false,
+ false
+ };
+ EXPECT_TRUE(client->Initialize(&cfd, cfp));
loop.RunFor(10);
client->Uninitialize();
client = NULL;
@@ -204,7 +234,17 @@ TEST(CFACWithChrome, NavigateFailed) {
.Times(1)
.WillOnce(QUIT_LOOP_SOON(loop, 2));
- EXPECT_TRUE(client->Initialize(&cfd, 10000, false, profile, L"", false));
+ ChromeFrameLaunchParams cfp = {
+ 10000,
+ GURL(),
+ GURL(),
+ profile,
+ L"",
+ false,
+ false,
+ false
+ };
+ EXPECT_TRUE(client->Initialize(&cfd, cfp));
loop.RunFor(10);
client->Uninitialize();
@@ -237,7 +277,17 @@ TEST_F(CFACMockTest, MockedCreateTabOk) {
EXPECT_CALL(proxy_, CancelAsync(_)).Times(testing::AnyNumber());
// Here we go!
- EXPECT_TRUE(client_->Initialize(&cfd_, timeout, false, profile_, L"", false));
+ ChromeFrameLaunchParams cfp = {
+ timeout,
+ GURL(),
+ GURL(),
+ profile_,
+ L"",
+ false,
+ false,
+ false
+ };
+ EXPECT_TRUE(client_->Initialize(&cfd_, cfp));
loop_.RunFor(10);
client_->Uninitialize();
}
@@ -262,8 +312,17 @@ TEST_F(CFACMockTest, MockedCreateTabFailed) {
Set_CFD_LaunchFailed(AUTOMATION_CREATE_TAB_FAILED);
// Here we go!
- EXPECT_TRUE(client_->Initialize(&cfd_, timeout_, false, profile_, L"",
- false));
+ ChromeFrameLaunchParams cfp = {
+ timeout_,
+ GURL(),
+ GURL(),
+ profile_,
+ L"",
+ false,
+ false,
+ false
+ };
+ EXPECT_TRUE(client_->Initialize(&cfd_, cfp));
loop_.RunFor(4);
client_->Uninitialize();
}
diff --git a/chrome_frame/test/chrome_frame_automation_mock.h b/chrome_frame/test/chrome_frame_automation_mock.h
index 6fea200..d751f1b 100644
--- a/chrome_frame/test/chrome_frame_automation_mock.h
+++ b/chrome_frame/test/chrome_frame_automation_mock.h
@@ -20,13 +20,23 @@ class AutomationMockDelegate
AutomationMockDelegate(MessageLoop* caller_message_loop,
int launch_timeout, bool perform_version_check,
const std::wstring& profile_name,
- const std::wstring& extra_chrome_arguments, bool incognito)
+ const std::wstring& extra_chrome_arguments, bool incognito,
+ bool is_widget_mode)
: caller_message_loop_(caller_message_loop), is_connected_(false),
navigation_result_(false) {
test_server_.SetUp();
automation_client_ = new ChromeFrameAutomationClient;
- automation_client_->Initialize(this, launch_timeout, perform_version_check,
- profile_name, extra_chrome_arguments, incognito);
+ ChromeFrameLaunchParams cfp = {
+ launch_timeout,
+ GURL(),
+ GURL(),
+ profile_name,
+ extra_chrome_arguments,
+ perform_version_check,
+ incognito,
+ is_widget_mode
+ };
+ automation_client_->Initialize(this, cfp);
}
~AutomationMockDelegate() {
if (automation_client_.get()) {
@@ -130,7 +140,8 @@ class AutomationMockLaunch
typedef AutomationMockDelegate<AutomationMockLaunch> Base;
AutomationMockLaunch(MessageLoop* caller_message_loop,
int launch_timeout)
- : Base(caller_message_loop, launch_timeout, true, L"", L"", false) {
+ : Base(caller_message_loop, launch_timeout, true, L"", L"", false,
+ false) {
}
virtual void OnAutomationServerReady() {
Base::OnAutomationServerReady();
@@ -147,7 +158,8 @@ class AutomationMockNavigate
typedef AutomationMockDelegate<AutomationMockNavigate> Base;
AutomationMockNavigate(MessageLoop* caller_message_loop,
int launch_timeout)
- : Base(caller_message_loop, launch_timeout, true, L"", L"", false) {
+ : Base(caller_message_loop, launch_timeout, true, L"", L"", false,
+ false) {
}
virtual void OnLoad(int tab_handle, const GURL& url) {
Base::OnLoad(tab_handle, url);
@@ -161,7 +173,7 @@ class AutomationMockPostMessage
typedef AutomationMockDelegate<AutomationMockPostMessage> Base;
AutomationMockPostMessage(MessageLoop* caller_message_loop,
int launch_timeout)
- : Base(caller_message_loop, launch_timeout, true, L"", L"", false),
+ : Base(caller_message_loop, launch_timeout, true, L"", L"", false, false),
postmessage_result_(false) {}
bool postmessage_result() const {
return postmessage_result_;
@@ -189,7 +201,7 @@ class AutomationMockHostNetworkRequestStart
typedef AutomationMockDelegate<AutomationMockHostNetworkRequestStart> Base;
AutomationMockHostNetworkRequestStart(MessageLoop* caller_message_loop,
int launch_timeout)
- : Base(caller_message_loop, launch_timeout, true, L"", L"", false),
+ : Base(caller_message_loop, launch_timeout, true, L"", L"", false, false),
request_start_result_(false) {
if (automation()) {
automation()->set_use_chrome_network(false);