diff options
author | pkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-31 06:43:08 +0000 |
---|---|---|
committer | pkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-31 06:43:08 +0000 |
commit | 0edcdec2f2284d50d710e31243a5b08205bd4b75 (patch) | |
tree | 8c2cf20e15fb74aa9343d0879beae94d865c5d76 /chrome/browser/ui/chrome_pages.cc | |
parent | f60429563b7af7258f331db6cfac6ce6e9a1795b (diff) | |
download | chromium_src-0edcdec2f2284d50d710e31243a5b08205bd4b75.zip chromium_src-0edcdec2f2284d50d710e31243a5b08205bd4b75.tar.gz chromium_src-0edcdec2f2284d50d710e31243a5b08205bd4b75.tar.bz2 |
Make sure that the created browser is displayed when chrome::FindOrCreateTabbedBrowser() is used
BUG=177542
TEST=None
Review URL: https://codereview.chromium.org/36333002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232018 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/chrome_pages.cc')
-rw-r--r-- | chrome/browser/ui/chrome_pages.cc | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/chrome/browser/ui/chrome_pages.cc b/chrome/browser/ui/chrome_pages.cc index 1e7412d..e5d7330 100644 --- a/chrome/browser/ui/chrome_pages.cc +++ b/chrome/browser/ui/chrome_pages.cc @@ -15,10 +15,10 @@ #include "chrome/browser/signin/signin_manager.h" #include "chrome/browser/signin/signin_manager_factory.h" #include "chrome/browser/ui/browser.h" -#include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/browser_navigator.h" #include "chrome/browser/ui/browser_window.h" #include "chrome/browser/ui/extensions/application_launch.h" +#include "chrome/browser/ui/scoped_tabbed_browser_displayer.h" #include "chrome/browser/ui/singleton_tabs.h" #include "chrome/browser/ui/tabs/tab_strip_model.h" #include "chrome/browser/ui/webui/options/content_settings_handler.h" @@ -98,8 +98,12 @@ void ShowHelpImpl(Browser* browser, default: NOTREACHED() << "Unhandled help source " << source; } - if (!browser) - browser = chrome::FindOrCreateTabbedBrowser(profile, host_desktop_type); + scoped_ptr<ScopedTabbedBrowserDisplayer> displayer; + if (!browser) { + displayer.reset( + new ScopedTabbedBrowserDisplayer(profile, host_desktop_type)); + browser = displayer->browser(); + } ShowSingletonTab(browser, url); } @@ -262,10 +266,11 @@ void ShowBrowserSignin(Browser* browser, signin::Source source) { // If the browser's profile is an incognito profile, make sure to use // a browser window from the original profile. The user cannot sign in // from an incognito window. + scoped_ptr<ScopedTabbedBrowserDisplayer> displayer; if (browser->profile()->IsOffTheRecord()) { - browser = - chrome::FindOrCreateTabbedBrowser(original_profile, - chrome::HOST_DESKTOP_TYPE_NATIVE); + displayer.reset(new ScopedTabbedBrowserDisplayer( + original_profile, chrome::HOST_DESKTOP_TYPE_NATIVE)); + browser = displayer->browser(); } NavigateToSingletonTab(browser, |