OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 "build/build_config.h" | 5 #include "build/build_config.h" |
6 | 6 |
7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
8 #include "base/keyboard_codes.h" | 8 #include "base/keyboard_codes.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/message_loop.h" | 10 #include "base/message_loop.h" |
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 void GetNativeWindow(gfx::NativeWindow* native_window) { | 127 void GetNativeWindow(gfx::NativeWindow* native_window) { |
128 BrowserWindow* window = browser()->window(); | 128 BrowserWindow* window = browser()->window(); |
129 ASSERT_TRUE(window); | 129 ASSERT_TRUE(window); |
130 *native_window = window->GetNativeHandle(); | 130 *native_window = window->GetNativeHandle(); |
131 ASSERT_TRUE(*native_window); | 131 ASSERT_TRUE(*native_window); |
132 } | 132 } |
133 | 133 |
134 void SendKey(base::KeyboardCode key, bool control, bool shift, bool alt) { | 134 void SendKey(base::KeyboardCode key, bool control, bool shift, bool alt) { |
135 gfx::NativeWindow window = NULL; | 135 gfx::NativeWindow window = NULL; |
136 ASSERT_NO_FATAL_FAILURE(GetNativeWindow(&window)); | 136 ASSERT_NO_FATAL_FAILURE(GetNativeWindow(&window)); |
137 ui_controls::SendKeyPressNotifyWhenDone(window, key, control, shift, alt, | 137 EXPECT_TRUE(ui_controls::SendKeyPressNotifyWhenDone( |
138 new MessageLoop::QuitTask()); | 138 window, key, control, shift, alt, new MessageLoop::QuitTask())); |
139 ui_test_utils::RunMessageLoop(); | 139 ui_test_utils::RunMessageLoop(); |
140 } | 140 } |
141 | 141 |
142 bool IsViewFocused(ViewID vid) { | 142 bool IsViewFocused(ViewID vid) { |
143 return ui_test_utils::IsViewFocused(browser(), vid); | 143 return ui_test_utils::IsViewFocused(browser(), vid); |
144 } | 144 } |
145 | 145 |
146 void ClickOnView(ViewID vid) { | 146 void ClickOnView(ViewID vid) { |
147 ui_test_utils::ClickOnView(browser(), vid); | 147 ui_test_utils::ClickOnView(browser(), vid); |
148 } | 148 } |
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
440 | 440 |
441 // Press Ctrl+F with keydown suppressed shall not open the find box. | 441 // Press Ctrl+F with keydown suppressed shall not open the find box. |
442 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlFSuppressKeyDown)); | 442 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlFSuppressKeyDown)); |
443 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 443 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
444 | 444 |
445 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZ)); | 445 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZ)); |
446 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZSuppressKeyDown)); | 446 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZSuppressKeyDown)); |
447 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlEnter)); | 447 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlEnter)); |
448 } | 448 } |
449 | 449 |
450 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, AccessKeys) { | 450 #if defined(OS_CHROMEOS) |
| 451 // See http://crbug.com/40037 for details. |
| 452 #define MAYBE_AccessKeys DISABLED_AccessKeys |
| 453 #else |
| 454 #define MAYBE_AccessKeys AccessKeys |
| 455 #endif |
| 456 |
| 457 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, MAYBE_AccessKeys) { |
451 static const KeyEventTestData kTestAltA = { | 458 static const KeyEventTestData kTestAltA = { |
452 base::VKEY_A, false, false, true, | 459 base::VKEY_A, false, false, true, |
453 false, false, false, false, 4, | 460 false, false, false, false, 4, |
454 { "D 18 0 false false true", | 461 { "D 18 0 false false true", |
455 "D 65 0 false false true", | 462 "D 65 0 false false true", |
456 "U 65 0 false false true", | 463 "U 65 0 false false true", |
457 "U 18 0 false false true" } | 464 "U 18 0 false false true" } |
458 }; | 465 }; |
459 | 466 |
460 static const KeyEventTestData kTestAltD = { | 467 static const KeyEventTestData kTestAltD = { |
(...skipping 19 matching lines...) Expand all Loading... |
480 "D 49 0 false false true", | 487 "D 49 0 false false true", |
481 "U 49 0 false false true", | 488 "U 49 0 false false true", |
482 "U 18 0 false false true" } | 489 "U 18 0 false false true" } |
483 }; | 490 }; |
484 | 491 |
485 HTTPTestServer* server = StartHTTPServer(); | 492 HTTPTestServer* server = StartHTTPServer(); |
486 | 493 |
487 GURL url = server->TestServerPageW(kTestingPage); | 494 GURL url = server->TestServerPageW(kTestingPage); |
488 ui_test_utils::NavigateToURL(browser(), url); | 495 ui_test_utils::NavigateToURL(browser(), url); |
489 | 496 |
| 497 ui_test_utils::RunAllPendingInMessageLoop(); |
490 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); | 498 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); |
491 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 499 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
492 | 500 |
493 int tab_index = browser()->selected_index(); | 501 int tab_index = browser()->selected_index(); |
494 // Make sure no element is focused. | 502 // Make sure no element is focused. |
495 EXPECT_NO_FATAL_FAILURE(CheckFocusedElement(tab_index, L"")); | 503 EXPECT_NO_FATAL_FAILURE(CheckFocusedElement(tab_index, L"")); |
496 // Alt+A should focus the element with accesskey = "A". | 504 // Alt+A should focus the element with accesskey = "A". |
497 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestAltA)); | 505 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestAltA)); |
498 EXPECT_NO_FATAL_FAILURE(CheckFocusedElement(tab_index, L"A")); | 506 EXPECT_NO_FATAL_FAILURE(CheckFocusedElement(tab_index, L"A")); |
499 | 507 |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
633 ASSERT_EQ(0, browser()->selected_index()); | 641 ASSERT_EQ(0, browser()->selected_index()); |
634 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCtrlWBlocked)); | 642 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCtrlWBlocked)); |
635 ASSERT_EQ(2, browser()->tab_count()); | 643 ASSERT_EQ(2, browser()->tab_count()); |
636 | 644 |
637 // Ctrl+F4 to close the tab. | 645 // Ctrl+F4 to close the tab. |
638 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); | 646 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); |
639 ASSERT_NO_FATAL_FAILURE(SendKey(base::VKEY_F4, true, false, false)); | 647 ASSERT_NO_FATAL_FAILURE(SendKey(base::VKEY_F4, true, false, false)); |
640 ASSERT_EQ(1, browser()->tab_count()); | 648 ASSERT_EQ(1, browser()->tab_count()); |
641 #endif | 649 #endif |
642 } | 650 } |
OLD | NEW |