diff options
author | prasadt@chromium.org <prasadt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-26 01:53:52 +0000 |
---|---|---|
committer | prasadt@chromium.org <prasadt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-26 01:53:52 +0000 |
commit | f112b0f0d868a5f1f8fd7a89d5730bfb392cb2e6 (patch) | |
tree | 1b3534cfd867e9340953b342b07e10cadd7b54f6 /chrome/browser/ui/browser_navigator_browsertest.cc | |
parent | aa6752c9a0de6bcf43662bdc56db50499968cb2d (diff) | |
download | chromium_src-f112b0f0d868a5f1f8fd7a89d5730bfb392cb2e6.zip chromium_src-f112b0f0d868a5f1f8fd7a89d5730bfb392cb2e6.tar.gz chromium_src-f112b0f0d868a5f1f8fd7a89d5730bfb392cb2e6.tar.bz2 |
Address bar is shown on pop-out extension windows.
The code path for window.open() call from extensions is not setting the
app_name_ on the browser instance which is causing the location bar to
be displayed.
This is a regression from "Cleanup popup related browser navigation
code." - svn://svn.chromium.org/chrome/trunk/src@83399
BUG=83692
TEST=Invoke window.open() from an extension background page. There
should be no location bar displayed.
modified: chrome/browser/extensions/extension_host.cc
modified: chrome/browser/ui/browser_navigator.cc
Review URL: http://codereview.chromium.org/6992018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86768 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/browser_navigator_browsertest.cc')
-rw-r--r-- | chrome/browser/ui/browser_navigator_browsertest.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/chrome/browser/ui/browser_navigator_browsertest.cc b/chrome/browser/ui/browser_navigator_browsertest.cc index bd717ed..c7d9b5f 100644 --- a/chrome/browser/ui/browser_navigator_browsertest.cc +++ b/chrome/browser/ui/browser_navigator_browsertest.cc @@ -275,6 +275,29 @@ IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, Disposition_NewPopup) { } // This test verifies that navigating with WindowOpenDisposition = NEW_POPUP +// from a normal Browser results in a new Browser with is_app() true. +IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, Disposition_NewPopup_ExtensionId) { + browser::NavigateParams p(MakeNavigateParams()); + p.disposition = NEW_POPUP; + p.extension_app_id = "extensionappid"; + p.window_bounds = gfx::Rect(0, 0, 200, 200); + browser::Navigate(&p); + // Wait for new popup to to load and gain focus. + ui_test_utils::WaitForNavigationInCurrentTab(p.browser); + + // Navigate() should have opened a new, focused popup window. + EXPECT_NE(browser(), p.browser); + EXPECT_TRUE(p.browser->is_type_popup()); + EXPECT_TRUE(p.browser->is_app()); + + // We should have two windows, the browser() provided by the framework and the + // new popup window. + EXPECT_EQ(2u, BrowserList::size()); + EXPECT_EQ(1, browser()->tab_count()); + EXPECT_EQ(1, p.browser->tab_count()); +} + +// This test verifies that navigating with WindowOpenDisposition = NEW_POPUP // from a normal popup results in a new Browser with TYPE_POPUP. IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, Disposition_NewPopupFromPopup) { // Open a popup. |