Index: chrome/browser/ui/webui/chrome_web_contents_handler.cc |
diff --git a/chrome/browser/ui/webui/chrome_web_contents_handler.cc b/chrome/browser/ui/webui/chrome_web_contents_handler.cc |
index 7f5fd4d0858a3cccd175f00e3b5b4740f7238e74..419cc8bd1ae50886491ac2fc46384da7cd783702 100644 |
--- a/chrome/browser/ui/webui/chrome_web_contents_handler.cc |
+++ b/chrome/browser/ui/webui/chrome_web_contents_handler.cc |
@@ -39,8 +39,12 @@ WebContents* ChromeWebContentsHandler::OpenURLFromTab( |
Browser* browser = chrome::FindTabbedBrowser(profile, false); |
const bool browser_created = !browser; |
- if (!browser) |
- browser = new Browser(Browser::CreateParams(Browser::TYPE_TABBED, profile)); |
+ if (!browser) { |
+ // TODO(erg): OpenURLParams should pass a user_gesture flag, pass it to |
+ // CreateParams, and pass the real value to nav_params below. |
+ browser = |
+ new Browser(Browser::CreateParams(Browser::TYPE_TABBED, profile, true)); |
+ } |
chrome::NavigateParams nav_params(browser, params.url, params.transition); |
nav_params.referrer = params.referrer; |
if (source && source->IsCrashed() && |
@@ -82,14 +86,16 @@ void ChromeWebContentsHandler::AddNewContents( |
Browser* browser = chrome::FindTabbedBrowser(profile, false); |
const bool browser_created = !browser; |
- if (!browser) |
- browser = new Browser(Browser::CreateParams(Browser::TYPE_TABBED, profile)); |
+ if (!browser) { |
+ browser = new Browser( |
+ Browser::CreateParams(Browser::TYPE_TABBED, profile, user_gesture)); |
+ } |
chrome::NavigateParams params(browser, new_contents); |
params.source_contents = source; |
params.disposition = disposition; |
params.window_bounds = initial_rect; |
params.window_action = chrome::NavigateParams::SHOW_WINDOW; |
- params.user_gesture = true; |
+ params.user_gesture = user_gesture; |
chrome::Navigate(¶ms); |
// Close the browser if chrome::Navigate created a new one. |