| OLD | NEW |
| 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 // This functionality currently works on Windows and on Linux when | 5 // This functionality currently works on Windows and on Linux when |
| 6 // toolkit_views is defined (i.e. for Chrome OS). It's not needed | 6 // toolkit_views is defined (i.e. for Chrome OS). It's not needed |
| 7 // on the Mac, and it's not yet implemented on Linux. | 7 // on the Mac, and it's not yet implemented on Linux. |
| 8 | 8 |
| 9 #include "base/memory/weak_ptr.h" | 9 #include "base/memory/weak_ptr.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 162 ViewFocusChangeWaiter waiter(focus_manager, original_view_id); | 162 ViewFocusChangeWaiter waiter(focus_manager, original_view_id); |
| 163 waiter.Wait(); | 163 waiter.Wait(); |
| 164 } | 164 } |
| 165 | 165 |
| 166 #if defined(OS_WIN) | 166 #if defined(OS_WIN) |
| 167 // Opens the system menu on Windows with the Alt Space combination and selects | 167 // Opens the system menu on Windows with the Alt Space combination and selects |
| 168 // the New Tab option from the menu. | 168 // the New Tab option from the menu. |
| 169 void TestSystemMenuWithKeyboard(); | 169 void TestSystemMenuWithKeyboard(); |
| 170 #endif | 170 #endif |
| 171 | 171 |
| 172 #if defined(USE_AURA) | |
| 173 // Uses the keyboard to select the wrench menu i.e. with the F10 key. | 172 // Uses the keyboard to select the wrench menu i.e. with the F10 key. |
| 174 // It verifies that the menu when dismissed by sending the ESC key it does | 173 // It verifies that the menu when dismissed by sending the ESC key it does |
| 175 // not display twice. | 174 // not display twice. |
| 176 void TestMenuKeyboardAccessAndDismiss(); | 175 void TestMenuKeyboardAccessAndDismiss(); |
| 177 #endif | |
| 178 | 176 |
| 179 DISALLOW_COPY_AND_ASSIGN(KeyboardAccessTest); | 177 DISALLOW_COPY_AND_ASSIGN(KeyboardAccessTest); |
| 180 }; | 178 }; |
| 181 | 179 |
| 182 void KeyboardAccessTest::TestMenuKeyboardAccess(bool alternate_key_sequence, | 180 void KeyboardAccessTest::TestMenuKeyboardAccess(bool alternate_key_sequence, |
| 183 bool shift, | 181 bool shift, |
| 184 bool focus_omnibox) { | 182 bool focus_omnibox) { |
| 185 // Navigate to a page in the first tab, which makes sure that focus is | 183 // Navigate to a page in the first tab, which makes sure that focus is |
| 186 // set to the browser window. | 184 // set to the browser window. |
| 187 ui_test_utils::NavigateToURL(browser(), GURL("about:")); | 185 ui_test_utils::NavigateToURL(browser(), GURL("about:")); |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 295 if (ret) { | 293 if (ret) { |
| 296 // Wait for the new tab to appear. | 294 // Wait for the new tab to appear. |
| 297 new_tab_observer.Wait(); | 295 new_tab_observer.Wait(); |
| 298 // Make sure that the new tab index is 1. | 296 // Make sure that the new tab index is 1. |
| 299 ASSERT_EQ(1, browser()->tab_strip_model()->active_index()); | 297 ASSERT_EQ(1, browser()->tab_strip_model()->active_index()); |
| 300 } | 298 } |
| 301 ::UnhookWindowsHookEx(cbt_hook); | 299 ::UnhookWindowsHookEx(cbt_hook); |
| 302 } | 300 } |
| 303 #endif | 301 #endif |
| 304 | 302 |
| 305 #if defined(USE_AURA) | |
| 306 void KeyboardAccessTest::TestMenuKeyboardAccessAndDismiss() { | 303 void KeyboardAccessTest::TestMenuKeyboardAccessAndDismiss() { |
| 307 ui_test_utils::NavigateToURL(browser(), GURL("about:")); | 304 ui_test_utils::NavigateToURL(browser(), GURL("about:")); |
| 308 | 305 |
| 309 ASSERT_EQ(0, browser()->tab_strip_model()->active_index()); | 306 ASSERT_EQ(0, browser()->tab_strip_model()->active_index()); |
| 310 | 307 |
| 311 ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); | 308 ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); |
| 312 | 309 |
| 313 int original_view_id = GetFocusedViewID(); | 310 int original_view_id = GetFocusedViewID(); |
| 314 | 311 |
| 315 BrowserView* browser_view = reinterpret_cast<BrowserView*>( | 312 BrowserView* browser_view = reinterpret_cast<BrowserView*>( |
| 316 browser()->window()); | 313 browser()->window()); |
| 317 ToolbarView* toolbar_view = browser_view->GetToolbarView(); | 314 ToolbarView* toolbar_view = browser_view->GetToolbarView(); |
| 318 SendKeysMenuListener menu_listener(toolbar_view, browser(), true); | 315 SendKeysMenuListener menu_listener(toolbar_view, browser(), true); |
| 319 | 316 |
| 320 browser()->window()->GetLocationBar()->FocusLocation(false); | 317 browser()->window()->GetLocationBar()->FocusLocation(false); |
| 321 | 318 |
| 322 ASSERT_TRUE(ui_test_utils::SendKeyPressSync( | 319 ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
| 323 browser(), ui::VKEY_F10, false, false, false, false)); | 320 browser(), ui::VKEY_F10, false, false, false, false)); |
| 324 | 321 |
| 325 WaitForFocusedViewIDToChange(original_view_id); | 322 WaitForFocusedViewIDToChange(original_view_id); |
| 326 | 323 |
| 327 SendKeyPress(browser(), ui::VKEY_DOWN); | 324 SendKeyPress(browser(), ui::VKEY_DOWN); |
| 328 content::RunMessageLoop(); | 325 content::RunMessageLoop(); |
| 329 ASSERT_EQ(1, menu_listener.menu_open_count()); | 326 ASSERT_EQ(1, menu_listener.menu_open_count()); |
| 330 } | 327 } |
| 331 #endif | |
| 332 | 328 |
| 333 // http://crbug.com/62310. | 329 // http://crbug.com/62310. |
| 334 #if defined(OS_CHROMEOS) | 330 #if defined(OS_CHROMEOS) |
| 335 #define MAYBE_TestMenuKeyboardAccess DISABLED_TestMenuKeyboardAccess | 331 #define MAYBE_TestMenuKeyboardAccess DISABLED_TestMenuKeyboardAccess |
| 336 #else | 332 #else |
| 337 #define MAYBE_TestMenuKeyboardAccess TestMenuKeyboardAccess | 333 #define MAYBE_TestMenuKeyboardAccess TestMenuKeyboardAccess |
| 338 #endif | 334 #endif |
| 339 | 335 |
| 340 IN_PROC_BROWSER_TEST_F(KeyboardAccessTest, MAYBE_TestMenuKeyboardAccess) { | 336 IN_PROC_BROWSER_TEST_F(KeyboardAccessTest, MAYBE_TestMenuKeyboardAccess) { |
| 341 TestMenuKeyboardAccess(false, false, false); | 337 TestMenuKeyboardAccess(false, false, false); |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 436 browser(), ui::VKEY_BROWSER_FORWARD, false, false, false, false)); | 432 browser(), ui::VKEY_BROWSER_FORWARD, false, false, false, false)); |
| 437 | 433 |
| 438 base::string16 after_forward; | 434 base::string16 after_forward; |
| 439 ASSERT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &after_forward)); | 435 ASSERT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &after_forward)); |
| 440 | 436 |
| 441 EXPECT_EQ(before_back, after_forward); | 437 EXPECT_EQ(before_back, after_forward); |
| 442 } | 438 } |
| 443 #endif | 439 #endif |
| 444 | 440 |
| 445 } // namespace | 441 } // namespace |
| OLD | NEW |