Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1359)

Unified Diff: chrome/browser/extensions/extension_tab_util.cc

Issue 2685333005: ash: fix regression where ctrl+n put new window on wrong desktop (Closed)
Patch Set: We have both kinds of compile fixes: mac and windows Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_tab_util.cc
diff --git a/chrome/browser/extensions/extension_tab_util.cc b/chrome/browser/extensions/extension_tab_util.cc
index 163ebfb58aedf0684ac74420b5e376c7cf82f548..048aafdea80c039946b7f7f1bbad9f7acb7483f4 100644
--- a/chrome/browser/extensions/extension_tab_util.cc
+++ b/chrome/browser/extensions/extension_tab_util.cc
@@ -95,8 +95,11 @@ Browser* GetBrowserInProfileWithId(Profile* profile,
return NULL;
}
-Browser* CreateBrowser(Profile* profile, int window_id, std::string* error) {
- Browser::CreateParams params(Browser::TYPE_TABBED, profile);
+Browser* CreateBrowser(Profile* profile,
+ int window_id,
+ bool user_gesture,
+ std::string* error) {
+ Browser::CreateParams params(Browser::TYPE_TABBED, profile, user_gesture);
Browser* browser = new Browser(params);
browser->window()->Show();
return browser;
@@ -126,6 +129,7 @@ ExtensionTabUtil::OpenTabParams::~OpenTabParams() {
base::DictionaryValue* ExtensionTabUtil::OpenTab(
UIThreadExtensionFunction* function,
const OpenTabParams& params,
+ bool user_gesture,
std::string* error) {
ChromeExtensionFunctionDetails chrome_details(function);
Profile* profile = chrome_details.GetProfile();
@@ -139,7 +143,7 @@ base::DictionaryValue* ExtensionTabUtil::OpenTab(
if (!params.create_browser_if_needed) {
return NULL;
}
- browser = CreateBrowser(profile, window_id, error);
+ browser = CreateBrowser(profile, window_id, user_gesture, error);
if (!browser)
return NULL;
}
@@ -215,8 +219,9 @@ base::DictionaryValue* ExtensionTabUtil::OpenTab(
browser = chrome::FindTabbedBrowser(profile, false);
if (!browser) {
- browser =
- new Browser(Browser::CreateParams(Browser::TYPE_TABBED, profile));
+ Browser::CreateParams params =
+ Browser::CreateParams(Browser::TYPE_TABBED, profile, user_gesture);
+ browser = new Browser(params);
browser->window()->Show();
}
}
@@ -583,8 +588,10 @@ void ExtensionTabUtil::CreateTab(WebContents* web_contents,
Profile::FromBrowserContext(web_contents->GetBrowserContext());
Browser* browser = chrome::FindTabbedBrowser(profile, false);
const bool browser_created = !browser;
- if (!browser)
- browser = new Browser(Browser::CreateParams(profile));
+ if (!browser) {
+ Browser::CreateParams params = Browser::CreateParams(profile, user_gesture);
+ browser = new Browser(params);
+ }
chrome::NavigateParams params(browser, web_contents);
// The extension_app_id parameter ends up as app_name in the Browser

Powered by Google App Engine
This is Rietveld 408576698