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

Side by Side Diff: chrome/browser/ui/views/constrained_window_views_browsertest.cc

Issue 11647017: Rename platform-independent ConstrainedWindow types to WebContentsModalDialog types (part 1) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: stage changes to preserve history Created 8 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/memory/weak_ptr.h" 5 #include "base/memory/weak_ptr.h"
6 #include "chrome/browser/profiles/profile.h" 6 #include "chrome/browser/profiles/profile.h"
7 #include "chrome/browser/ui/browser.h" 7 #include "chrome/browser/ui/browser.h"
8 #include "chrome/browser/ui/browser_commands.h" 8 #include "chrome/browser/ui/browser_commands.h"
9 #include "chrome/browser/ui/constrained_window_tab_helper.h" 9 #include "chrome/browser/ui/constrained_window_tab_helper.h"
10 #include "chrome/browser/ui/tabs/tab_strip_model.h" 10 #include "chrome/browser/ui/tabs/tab_strip_model.h"
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 // showing. 143 // showing.
144 scoped_ptr<TestConstrainedDialog> test_dialog2(new TestConstrainedDialog); 144 scoped_ptr<TestConstrainedDialog> test_dialog2(new TestConstrainedDialog);
145 ConstrainedWindowViews* window2 = new ConstrainedWindowViews( 145 ConstrainedWindowViews* window2 = new ConstrainedWindowViews(
146 web_contents, test_dialog2.get()); 146 web_contents, test_dialog2.get());
147 // Should be the same focus_manager. 147 // Should be the same focus_manager.
148 ASSERT_EQ(focus_manager, window2->GetFocusManager()); 148 ASSERT_EQ(focus_manager, window2->GetFocusManager());
149 149
150 // test_dialog1's text field should still be the view that has focus. 150 // test_dialog1's text field should still be the view that has focus.
151 EXPECT_EQ(test_dialog1->GetInitiallyFocusedView(), 151 EXPECT_EQ(test_dialog1->GetInitiallyFocusedView(),
152 focus_manager->GetFocusedView()); 152 focus_manager->GetFocusedView());
153 ASSERT_EQ(2u, constrained_window_helper->constrained_window_count()); 153 ASSERT_EQ(2u, constrained_window_helper->dialog_count());
154 154
155 // Now send a VKEY_RETURN to the browser. This should result in closing 155 // Now send a VKEY_RETURN to the browser. This should result in closing
156 // test_dialog1. 156 // test_dialog1.
157 EXPECT_TRUE(focus_manager->ProcessAccelerator( 157 EXPECT_TRUE(focus_manager->ProcessAccelerator(
158 ui::Accelerator(ui::VKEY_RETURN, ui::EF_NONE))); 158 ui::Accelerator(ui::VKEY_RETURN, ui::EF_NONE)));
159 content::RunAllPendingInMessageLoop(); 159 content::RunAllPendingInMessageLoop();
160 160
161 EXPECT_TRUE(test_dialog1->done()); 161 EXPECT_TRUE(test_dialog1->done());
162 EXPECT_FALSE(test_dialog2->done()); 162 EXPECT_FALSE(test_dialog2->done());
163 EXPECT_EQ(1u, constrained_window_helper->constrained_window_count()); 163 EXPECT_EQ(1u, constrained_window_helper->dialog_count());
164 164
165 // test_dialog2 will be shown. Focus should be on test_dialog2's text field. 165 // test_dialog2 will be shown. Focus should be on test_dialog2's text field.
166 EXPECT_EQ(test_dialog2->GetInitiallyFocusedView(), 166 EXPECT_EQ(test_dialog2->GetInitiallyFocusedView(),
167 focus_manager->GetFocusedView()); 167 focus_manager->GetFocusedView());
168 168
169 int tab_with_constrained_window = browser()->active_index(); 169 int tab_with_constrained_window = browser()->active_index();
170 170
171 // Create a new tab. 171 // Create a new tab.
172 chrome::NewTab(browser()); 172 chrome::NewTab(browser());
173 173
174 // The constrained dialog should no longer be selected. 174 // The constrained dialog should no longer be selected.
175 EXPECT_NE(test_dialog2->GetInitiallyFocusedView(), 175 EXPECT_NE(test_dialog2->GetInitiallyFocusedView(),
176 focus_manager->GetFocusedView()); 176 focus_manager->GetFocusedView());
177 177
178 browser()->tab_strip_model()->ActivateTabAt(tab_with_constrained_window, 178 browser()->tab_strip_model()->ActivateTabAt(tab_with_constrained_window,
179 false); 179 false);
180 180
181 // Activating the previous tab should bring focus to the constrained window. 181 // Activating the previous tab should bring focus to the constrained window.
182 EXPECT_EQ(test_dialog2->GetInitiallyFocusedView(), 182 EXPECT_EQ(test_dialog2->GetInitiallyFocusedView(),
183 focus_manager->GetFocusedView()); 183 focus_manager->GetFocusedView());
184 184
185 // Send another VKEY_RETURN, closing test_dialog2 185 // Send another VKEY_RETURN, closing test_dialog2
186 EXPECT_TRUE(focus_manager->ProcessAccelerator( 186 EXPECT_TRUE(focus_manager->ProcessAccelerator(
187 ui::Accelerator(ui::VKEY_RETURN, ui::EF_NONE))); 187 ui::Accelerator(ui::VKEY_RETURN, ui::EF_NONE)));
188 content::RunAllPendingInMessageLoop(); 188 content::RunAllPendingInMessageLoop();
189 EXPECT_TRUE(test_dialog2->done()); 189 EXPECT_TRUE(test_dialog2->done());
190 EXPECT_EQ(0u, constrained_window_helper->constrained_window_count()); 190 EXPECT_EQ(0u, constrained_window_helper->dialog_count());
191 } 191 }
192 192
193 // Tests that the constrained window is closed properly when its tab is 193 // Tests that the constrained window is closed properly when its tab is
194 // closed. 194 // closed.
195 IN_PROC_BROWSER_TEST_F(ConstrainedWindowViewTest, TabCloseTest) { 195 IN_PROC_BROWSER_TEST_F(ConstrainedWindowViewTest, TabCloseTest) {
196 content::WebContents* web_contents = 196 content::WebContents* web_contents =
197 browser()->tab_strip_model()->GetActiveWebContents(); 197 browser()->tab_strip_model()->GetActiveWebContents();
198 ASSERT_TRUE(web_contents != NULL); 198 ASSERT_TRUE(web_contents != NULL);
199 ConstrainedWindowTabHelper* constrained_window_helper = 199 ConstrainedWindowTabHelper* constrained_window_helper =
200 ConstrainedWindowTabHelper::FromWebContents(web_contents); 200 ConstrainedWindowTabHelper::FromWebContents(web_contents);
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 ui_test_utils::NavigateToURL(browser(), url); 265 ui_test_utils::NavigateToURL(browser(), url);
266 266
267 ConstrainedWebDialogDelegate* cwdd = CreateConstrainedWebDialog( 267 ConstrainedWebDialogDelegate* cwdd = CreateConstrainedWebDialog(
268 browser()->profile(), 268 browser()->profile(),
269 new ui::test::TestWebDialogDelegate(url), 269 new ui::test::TestWebDialogDelegate(url),
270 NULL, 270 NULL,
271 web_contents); 271 web_contents);
272 272
273 ConstrainedWindowViews* cwv = 273 ConstrainedWindowViews* cwv =
274 static_cast<ConstrainedWindowViews*>(cwdd->GetWindow()); 274 static_cast<ConstrainedWindowViews*>(cwdd->GetWindow());
275 cwv->FocusConstrainedWindow(); 275 cwv->FocusWebContentsModalDialog();
276 276
277 BrowserView* browser_view = static_cast<BrowserView*>(browser()->window()); 277 BrowserView* browser_view = static_cast<BrowserView*>(browser()->window());
278 ui::KeyEvent key_event(ui::ET_KEY_PRESSED, 278 ui::KeyEvent key_event(ui::ET_KEY_PRESSED,
279 ui::VKEY_BACK, 279 ui::VKEY_BACK,
280 ui::EF_NONE, 280 ui::EF_NONE,
281 false); 281 false);
282 bool not_consumed = browser_view->GetFocusManager()->OnKeyEvent(key_event); 282 bool not_consumed = browser_view->GetFocusManager()->OnKeyEvent(key_event);
283 EXPECT_TRUE(not_consumed); 283 EXPECT_TRUE(not_consumed);
284 } 284 }
285 #endif // defined(OS_WIN) && !defined(USE_AURA) 285 #endif // defined(OS_WIN) && !defined(USE_AURA)
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/constrained_window_views.cc ('k') | chrome/browser/ui/views/ssl_client_certificate_selector.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698