OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "app/keyboard_codes.h" |
7 #include "base/basictypes.h" | 8 #include "base/basictypes.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" |
11 #include "base/string_util.h" | 11 #include "base/string_util.h" |
12 #include "base/utf_string_conversions.h" | 12 #include "base/utf_string_conversions.h" |
13 #include "base/values.h" | 13 #include "base/values.h" |
14 #include "chrome/browser/automation/ui_controls.h" | 14 #include "chrome/browser/automation/ui_controls.h" |
15 #include "chrome/browser/browser.h" | 15 #include "chrome/browser/browser.h" |
16 #include "chrome/browser/browser_window.h" | 16 #include "chrome/browser/browser_window.h" |
17 #include "chrome/browser/dom_operation_notification_details.h" | 17 #include "chrome/browser/dom_operation_notification_details.h" |
18 #include "chrome/browser/renderer_host/render_view_host.h" | 18 #include "chrome/browser/renderer_host/render_view_host.h" |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 // the result of keydown, keypress, keyup and textInput events. | 56 // the result of keydown, keypress, keyup and textInput events. |
57 // For keydown, keypress and keyup events, the format of the result string is: | 57 // For keydown, keypress and keyup events, the format of the result string is: |
58 // <type> <keyCode> <charCode> <ctrlKey> <shiftKey> <altKey> <commandKey> | 58 // <type> <keyCode> <charCode> <ctrlKey> <shiftKey> <altKey> <commandKey> |
59 // where <type> may be 'D' (keydown), 'P' (keypress) or 'U' (keyup). | 59 // where <type> may be 'D' (keydown), 'P' (keypress) or 'U' (keyup). |
60 // <ctrlKey>, <shiftKey> <altKey> and <commandKey> are boolean value indicating | 60 // <ctrlKey>, <shiftKey> <altKey> and <commandKey> are boolean value indicating |
61 // the state of corresponding modifier key. | 61 // the state of corresponding modifier key. |
62 // For textInput event, the format is: T <text>, where <text> is the text to be | 62 // For textInput event, the format is: T <text>, where <text> is the text to be |
63 // input. | 63 // input. |
64 // Please refer to chrome/test/data/keyevents_test.html for details. | 64 // Please refer to chrome/test/data/keyevents_test.html for details. |
65 struct KeyEventTestData { | 65 struct KeyEventTestData { |
66 base::KeyboardCode key; | 66 app::KeyboardCode key; |
67 bool ctrl; | 67 bool ctrl; |
68 bool shift; | 68 bool shift; |
69 bool alt; | 69 bool alt; |
70 bool command; | 70 bool command; |
71 | 71 |
72 bool suppress_keydown; | 72 bool suppress_keydown; |
73 bool suppress_keypress; | 73 bool suppress_keypress; |
74 bool suppress_keyup; | 74 bool suppress_keyup; |
75 bool suppress_textinput; | 75 bool suppress_textinput; |
76 | 76 |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 *native_window = window->GetNativeHandle(); | 135 *native_window = window->GetNativeHandle(); |
136 ASSERT_TRUE(*native_window); | 136 ASSERT_TRUE(*native_window); |
137 } | 137 } |
138 | 138 |
139 void BringBrowserWindowToFront() { | 139 void BringBrowserWindowToFront() { |
140 gfx::NativeWindow window = NULL; | 140 gfx::NativeWindow window = NULL; |
141 ASSERT_NO_FATAL_FAILURE(GetNativeWindow(&window)); | 141 ASSERT_NO_FATAL_FAILURE(GetNativeWindow(&window)); |
142 ui_test_utils::ShowAndFocusNativeWindow(window); | 142 ui_test_utils::ShowAndFocusNativeWindow(window); |
143 } | 143 } |
144 | 144 |
145 void SendKey(base::KeyboardCode key, | 145 void SendKey(app::KeyboardCode key, |
146 bool control, | 146 bool control, |
147 bool shift, | 147 bool shift, |
148 bool alt, | 148 bool alt, |
149 bool command) { | 149 bool command) { |
150 gfx::NativeWindow window = NULL; | 150 gfx::NativeWindow window = NULL; |
151 ASSERT_NO_FATAL_FAILURE(GetNativeWindow(&window)); | 151 ASSERT_NO_FATAL_FAILURE(GetNativeWindow(&window)); |
152 ASSERT_TRUE(ui_test_utils::SendKeyPressSync( | 152 ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
153 window, key, control, shift, alt, command)); | 153 window, key, control, shift, alt, command)); |
154 } | 154 } |
155 | 155 |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
308 desc.append(data.result[i]); | 308 desc.append(data.result[i]); |
309 desc.append("\n"); | 309 desc.append("\n"); |
310 } | 310 } |
311 return desc; | 311 return desc; |
312 } | 312 } |
313 }; | 313 }; |
314 | 314 |
315 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, NormalKeyEvents) { | 315 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, NormalKeyEvents) { |
316 static const KeyEventTestData kTestNoInput[] = { | 316 static const KeyEventTestData kTestNoInput[] = { |
317 // a | 317 // a |
318 { base::VKEY_A, false, false, false, false, | 318 { app::VKEY_A, false, false, false, false, |
319 false, false, false, false, 3, | 319 false, false, false, false, 3, |
320 { "D 65 0 false false false false", | 320 { "D 65 0 false false false false", |
321 "P 97 97 false false false false", | 321 "P 97 97 false false false false", |
322 "U 65 0 false false false false" } }, | 322 "U 65 0 false false false false" } }, |
323 // shift-a | 323 // shift-a |
324 { base::VKEY_A, false, true, false, false, | 324 { app::VKEY_A, false, true, false, false, |
325 false, false, false, false, 5, | 325 false, false, false, false, 5, |
326 { "D 16 0 false true false false", | 326 { "D 16 0 false true false false", |
327 "D 65 0 false true false false", | 327 "D 65 0 false true false false", |
328 "P 65 65 false true false false", | 328 "P 65 65 false true false false", |
329 "U 65 0 false true false false", | 329 "U 65 0 false true false false", |
330 "U 16 0 false true false false" } }, | 330 "U 16 0 false true false false" } }, |
331 // a, suppress keydown | 331 // a, suppress keydown |
332 { base::VKEY_A, false, false, false, false, | 332 { app::VKEY_A, false, false, false, false, |
333 true, false, false, false, 2, | 333 true, false, false, false, 2, |
334 { "D 65 0 false false false false", | 334 { "D 65 0 false false false false", |
335 "U 65 0 false false false false" } }, | 335 "U 65 0 false false false false" } }, |
336 }; | 336 }; |
337 | 337 |
338 static const KeyEventTestData kTestWithInput[] = { | 338 static const KeyEventTestData kTestWithInput[] = { |
339 // a | 339 // a |
340 { base::VKEY_A, false, false, false, false, | 340 { app::VKEY_A, false, false, false, false, |
341 false, false, false, false, 4, | 341 false, false, false, false, 4, |
342 { "D 65 0 false false false false", | 342 { "D 65 0 false false false false", |
343 "P 97 97 false false false false", | 343 "P 97 97 false false false false", |
344 "T a", | 344 "T a", |
345 "U 65 0 false false false false" } }, | 345 "U 65 0 false false false false" } }, |
346 // shift-a | 346 // shift-a |
347 { base::VKEY_A, false, true, false, false, | 347 { app::VKEY_A, false, true, false, false, |
348 false, false, false, false, 6, | 348 false, false, false, false, 6, |
349 { "D 16 0 false true false false", | 349 { "D 16 0 false true false false", |
350 "D 65 0 false true false false", | 350 "D 65 0 false true false false", |
351 "P 65 65 false true false false", | 351 "P 65 65 false true false false", |
352 "T A", | 352 "T A", |
353 "U 65 0 false true false false", | 353 "U 65 0 false true false false", |
354 "U 16 0 false true false false" } }, | 354 "U 16 0 false true false false" } }, |
355 // a, suppress keydown | 355 // a, suppress keydown |
356 { base::VKEY_A, false, false, false, false, | 356 { app::VKEY_A, false, false, false, false, |
357 true, false, false, false, 2, | 357 true, false, false, false, 2, |
358 { "D 65 0 false false false false", | 358 { "D 65 0 false false false false", |
359 "U 65 0 false false false false" } }, | 359 "U 65 0 false false false false" } }, |
360 // a, suppress keypress | 360 // a, suppress keypress |
361 { base::VKEY_A, false, false, false, false, | 361 { app::VKEY_A, false, false, false, false, |
362 false, true, false, false, 3, | 362 false, true, false, false, 3, |
363 { "D 65 0 false false false false", | 363 { "D 65 0 false false false false", |
364 "P 97 97 false false false false", | 364 "P 97 97 false false false false", |
365 "U 65 0 false false false false" } }, | 365 "U 65 0 false false false false" } }, |
366 // a, suppress textInput | 366 // a, suppress textInput |
367 { base::VKEY_A, false, false, false, false, | 367 { app::VKEY_A, false, false, false, false, |
368 false, false, false, true, 4, | 368 false, false, false, true, 4, |
369 { "D 65 0 false false false false", | 369 { "D 65 0 false false false false", |
370 "P 97 97 false false false false", | 370 "P 97 97 false false false false", |
371 "T a", | 371 "T a", |
372 "U 65 0 false false false false" } }, | 372 "U 65 0 false false false false" } }, |
373 }; | 373 }; |
374 | 374 |
375 ASSERT_TRUE(test_server()->Start()); | 375 ASSERT_TRUE(test_server()->Start()); |
376 | 376 |
377 BringBrowserWindowToFront(); | 377 BringBrowserWindowToFront(); |
(...skipping 25 matching lines...) Expand all Loading... |
403 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestWithInput[i])) | 403 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestWithInput[i])) |
404 << "kTestWithInput[" << i << "] in password box failed:\n" | 404 << "kTestWithInput[" << i << "] in password box failed:\n" |
405 << GetTestDataDescription(kTestWithInput[i]); | 405 << GetTestDataDescription(kTestWithInput[i]); |
406 } | 406 } |
407 EXPECT_NO_FATAL_FAILURE(CheckTextBoxValue(tab_index, L"B", L"aA")); | 407 EXPECT_NO_FATAL_FAILURE(CheckTextBoxValue(tab_index, L"B", L"aA")); |
408 } | 408 } |
409 | 409 |
410 #if defined(OS_WIN) || defined(OS_LINUX) | 410 #if defined(OS_WIN) || defined(OS_LINUX) |
411 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, CtrlKeyEvents) { | 411 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, CtrlKeyEvents) { |
412 static const KeyEventTestData kTestCtrlF = { | 412 static const KeyEventTestData kTestCtrlF = { |
413 base::VKEY_F, true, false, false, false, | 413 app::VKEY_F, true, false, false, false, |
414 false, false, false, false, 2, | 414 false, false, false, false, 2, |
415 { "D 17 0 true false false false", | 415 { "D 17 0 true false false false", |
416 "D 70 0 true false false false" } | 416 "D 70 0 true false false false" } |
417 }; | 417 }; |
418 | 418 |
419 static const KeyEventTestData kTestCtrlFSuppressKeyDown = { | 419 static const KeyEventTestData kTestCtrlFSuppressKeyDown = { |
420 base::VKEY_F, true, false, false, false, | 420 app::VKEY_F, true, false, false, false, |
421 true, false, false, false, 4, | 421 true, false, false, false, 4, |
422 { "D 17 0 true false false false", | 422 { "D 17 0 true false false false", |
423 "D 70 0 true false false false", | 423 "D 70 0 true false false false", |
424 "U 70 0 true false false false", | 424 "U 70 0 true false false false", |
425 "U 17 0 true false false false" } | 425 "U 17 0 true false false false" } |
426 }; | 426 }; |
427 | 427 |
428 // Ctrl+Z doesn't bind to any accelerators, which then should generate a | 428 // Ctrl+Z doesn't bind to any accelerators, which then should generate a |
429 // keypress event with charCode=26. | 429 // keypress event with charCode=26. |
430 static const KeyEventTestData kTestCtrlZ = { | 430 static const KeyEventTestData kTestCtrlZ = { |
431 base::VKEY_Z, true, false, false, false, | 431 app::VKEY_Z, true, false, false, false, |
432 false, false, false, false, 5, | 432 false, false, false, false, 5, |
433 { "D 17 0 true false false false", | 433 { "D 17 0 true false false false", |
434 "D 90 0 true false false false", | 434 "D 90 0 true false false false", |
435 "P 26 26 true false false false", | 435 "P 26 26 true false false false", |
436 "U 90 0 true false false false", | 436 "U 90 0 true false false false", |
437 "U 17 0 true false false false" } | 437 "U 17 0 true false false false" } |
438 }; | 438 }; |
439 | 439 |
440 static const KeyEventTestData kTestCtrlZSuppressKeyDown = { | 440 static const KeyEventTestData kTestCtrlZSuppressKeyDown = { |
441 base::VKEY_Z, true, false, false, false, | 441 app::VKEY_Z, true, false, false, false, |
442 true, false, false, false, 4, | 442 true, false, false, false, 4, |
443 { "D 17 0 true false false false", | 443 { "D 17 0 true false false false", |
444 "D 90 0 true false false false", | 444 "D 90 0 true false false false", |
445 "U 90 0 true false false false", | 445 "U 90 0 true false false false", |
446 "U 17 0 true false false false" } | 446 "U 17 0 true false false false" } |
447 }; | 447 }; |
448 | 448 |
449 // Ctrl+Enter shall generate a keypress event with charCode=10 (LF). | 449 // Ctrl+Enter shall generate a keypress event with charCode=10 (LF). |
450 static const KeyEventTestData kTestCtrlEnter = { | 450 static const KeyEventTestData kTestCtrlEnter = { |
451 base::VKEY_RETURN, true, false, false, false, | 451 app::VKEY_RETURN, true, false, false, false, |
452 false, false, false, false, 5, | 452 false, false, false, false, 5, |
453 { "D 17 0 true false false false", | 453 { "D 17 0 true false false false", |
454 "D 13 0 true false false false", | 454 "D 13 0 true false false false", |
455 "P 10 10 true false false false", | 455 "P 10 10 true false false false", |
456 "U 13 0 true false false false", | 456 "U 13 0 true false false false", |
457 "U 17 0 true false false false" } | 457 "U 17 0 true false false false" } |
458 }; | 458 }; |
459 | 459 |
460 ASSERT_TRUE(test_server()->Start()); | 460 ASSERT_TRUE(test_server()->Start()); |
461 | 461 |
462 BringBrowserWindowToFront(); | 462 BringBrowserWindowToFront(); |
463 GURL url = test_server()->GetURL(kTestingPage); | 463 GURL url = test_server()->GetURL(kTestingPage); |
464 ui_test_utils::NavigateToURL(browser(), url); | 464 ui_test_utils::NavigateToURL(browser(), url); |
465 | 465 |
466 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); | 466 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); |
467 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 467 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
468 | 468 |
469 int tab_index = browser()->selected_index(); | 469 int tab_index = browser()->selected_index(); |
470 // Press Ctrl+F, which will make the Find box open and request focus. | 470 // Press Ctrl+F, which will make the Find box open and request focus. |
471 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlF)); | 471 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlF)); |
472 EXPECT_TRUE(IsViewFocused(VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); | 472 EXPECT_TRUE(IsViewFocused(VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
473 | 473 |
474 // Press Escape to close the Find box and move the focus back to the web page. | 474 // Press Escape to close the Find box and move the focus back to the web page. |
475 ASSERT_NO_FATAL_FAILURE( | 475 ASSERT_NO_FATAL_FAILURE( |
476 SendKey(base::VKEY_ESCAPE, false, false, false, false)); | 476 SendKey(app::VKEY_ESCAPE, false, false, false, false)); |
477 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 477 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
478 | 478 |
479 // Press Ctrl+F with keydown suppressed shall not open the find box. | 479 // Press Ctrl+F with keydown suppressed shall not open the find box. |
480 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlFSuppressKeyDown)); | 480 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlFSuppressKeyDown)); |
481 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 481 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
482 | 482 |
483 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZ)); | 483 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZ)); |
484 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZSuppressKeyDown)); | 484 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlZSuppressKeyDown)); |
485 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlEnter)); | 485 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlEnter)); |
486 } | 486 } |
487 #elif defined(OS_MACOSX) | 487 #elif defined(OS_MACOSX) |
488 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, CommandKeyEvents) { | 488 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, CommandKeyEvents) { |
489 static const KeyEventTestData kTestCmdF = { | 489 static const KeyEventTestData kTestCmdF = { |
490 base::VKEY_F, false, false, false, true, | 490 app::VKEY_F, false, false, false, true, |
491 false, false, false, false, 2, | 491 false, false, false, false, 2, |
492 { "D 91 0 false false false true", | 492 { "D 91 0 false false false true", |
493 "D 70 0 false false false true" } | 493 "D 70 0 false false false true" } |
494 }; | 494 }; |
495 | 495 |
496 // On Mac we don't send key up events when command modifier is down. | 496 // On Mac we don't send key up events when command modifier is down. |
497 static const KeyEventTestData kTestCmdFSuppressKeyDown = { | 497 static const KeyEventTestData kTestCmdFSuppressKeyDown = { |
498 base::VKEY_F, false, false, false, true, | 498 app::VKEY_F, false, false, false, true, |
499 true, false, false, false, 3, | 499 true, false, false, false, 3, |
500 { "D 91 0 false false false true", | 500 { "D 91 0 false false false true", |
501 "D 70 0 false false false true", | 501 "D 70 0 false false false true", |
502 "U 91 0 false false false true" } | 502 "U 91 0 false false false true" } |
503 }; | 503 }; |
504 | 504 |
505 ASSERT_TRUE(test_server()->Start()); | 505 ASSERT_TRUE(test_server()->Start()); |
506 | 506 |
507 BringBrowserWindowToFront(); | 507 BringBrowserWindowToFront(); |
508 GURL url = test_server()->GetURL(kTestingPage); | 508 GURL url = test_server()->GetURL(kTestingPage); |
509 ui_test_utils::NavigateToURL(browser(), url); | 509 ui_test_utils::NavigateToURL(browser(), url); |
510 | 510 |
511 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); | 511 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); |
512 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 512 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
513 | 513 |
514 int tab_index = browser()->selected_index(); | 514 int tab_index = browser()->selected_index(); |
515 // Press Cmd+F, which will make the Find box open and request focus. | 515 // Press Cmd+F, which will make the Find box open and request focus. |
516 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCmdF)); | 516 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCmdF)); |
517 EXPECT_TRUE(IsViewFocused(VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); | 517 EXPECT_TRUE(IsViewFocused(VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
518 | 518 |
519 // Press Escape to close the Find box and move the focus back to the web page. | 519 // Press Escape to close the Find box and move the focus back to the web page. |
520 ASSERT_NO_FATAL_FAILURE( | 520 ASSERT_NO_FATAL_FAILURE( |
521 SendKey(base::VKEY_ESCAPE, false, false, false, false)); | 521 SendKey(app::VKEY_ESCAPE, false, false, false, false)); |
522 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 522 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
523 | 523 |
524 // Press Cmd+F with keydown suppressed shall not open the find box. | 524 // Press Cmd+F with keydown suppressed shall not open the find box. |
525 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCmdFSuppressKeyDown)); | 525 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCmdFSuppressKeyDown)); |
526 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 526 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
527 } | 527 } |
528 #endif | 528 #endif |
529 | 529 |
530 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, AccessKeys) { | 530 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, AccessKeys) { |
531 #if defined(OS_MACOSX) | 531 #if defined(OS_MACOSX) |
532 // On Mac, access keys use ctrl+alt modifiers. | 532 // On Mac, access keys use ctrl+alt modifiers. |
533 static const KeyEventTestData kTestAccessA = { | 533 static const KeyEventTestData kTestAccessA = { |
534 base::VKEY_A, true, false, true, false, | 534 app::VKEY_A, true, false, true, false, |
535 false, false, false, false, 6, | 535 false, false, false, false, 6, |
536 { "D 17 0 true false false false", | 536 { "D 17 0 true false false false", |
537 "D 18 0 true false true false", | 537 "D 18 0 true false true false", |
538 "D 65 0 true false true false", | 538 "D 65 0 true false true false", |
539 "U 65 0 true false true false", | 539 "U 65 0 true false true false", |
540 "U 18 0 true false true false", | 540 "U 18 0 true false true false", |
541 "U 17 0 true false false false" } | 541 "U 17 0 true false false false" } |
542 }; | 542 }; |
543 | 543 |
544 static const KeyEventTestData kTestAccessDSuppress = { | 544 static const KeyEventTestData kTestAccessDSuppress = { |
545 base::VKEY_D, true, false, true, false, | 545 app::VKEY_D, true, false, true, false, |
546 true, true, true, false, 6, | 546 true, true, true, false, 6, |
547 { "D 17 0 true false false false", | 547 { "D 17 0 true false false false", |
548 "D 18 0 true false true false", | 548 "D 18 0 true false true false", |
549 "D 68 0 true false true false", | 549 "D 68 0 true false true false", |
550 "U 68 0 true false true false", | 550 "U 68 0 true false true false", |
551 "U 18 0 true false true false", | 551 "U 18 0 true false true false", |
552 "U 17 0 true false false false" } | 552 "U 17 0 true false false false" } |
553 }; | 553 }; |
554 | 554 |
555 static const KeyEventTestData kTestAccess1 = { | 555 static const KeyEventTestData kTestAccess1 = { |
556 base::VKEY_1, true, false, true, false, | 556 app::VKEY_1, true, false, true, false, |
557 false, false, false, false, 6, | 557 false, false, false, false, 6, |
558 { "D 17 0 true false false false", | 558 { "D 17 0 true false false false", |
559 "D 18 0 true false true false", | 559 "D 18 0 true false true false", |
560 "D 49 0 true false true false", | 560 "D 49 0 true false true false", |
561 "U 49 0 true false true false", | 561 "U 49 0 true false true false", |
562 "U 18 0 true false true false", | 562 "U 18 0 true false true false", |
563 "U 17 0 true false false false" } | 563 "U 17 0 true false false false" } |
564 }; | 564 }; |
565 #else | 565 #else |
566 static const KeyEventTestData kTestAccessA = { | 566 static const KeyEventTestData kTestAccessA = { |
567 base::VKEY_A, false, false, true, false, | 567 app::VKEY_A, false, false, true, false, |
568 false, false, false, false, 4, | 568 false, false, false, false, 4, |
569 { "D 18 0 false false true false", | 569 { "D 18 0 false false true false", |
570 "D 65 0 false false true false", | 570 "D 65 0 false false true false", |
571 "U 65 0 false false true false", | 571 "U 65 0 false false true false", |
572 "U 18 0 false false true false" } | 572 "U 18 0 false false true false" } |
573 }; | 573 }; |
574 | 574 |
575 static const KeyEventTestData kTestAccessD = { | 575 static const KeyEventTestData kTestAccessD = { |
576 base::VKEY_D, false, false, true, false, | 576 app::VKEY_D, false, false, true, false, |
577 false, false, false, false, 2, | 577 false, false, false, false, 2, |
578 { "D 18 0 false false true false", | 578 { "D 18 0 false false true false", |
579 "D 68 0 false false true false" } | 579 "D 68 0 false false true false" } |
580 }; | 580 }; |
581 | 581 |
582 static const KeyEventTestData kTestAccessDSuppress = { | 582 static const KeyEventTestData kTestAccessDSuppress = { |
583 base::VKEY_D, false, false, true, false, | 583 app::VKEY_D, false, false, true, false, |
584 true, true, true, false, 4, | 584 true, true, true, false, 4, |
585 { "D 18 0 false false true false", | 585 { "D 18 0 false false true false", |
586 "D 68 0 false false true false", | 586 "D 68 0 false false true false", |
587 "U 68 0 false false true false", | 587 "U 68 0 false false true false", |
588 "U 18 0 false false true false" } | 588 "U 18 0 false false true false" } |
589 }; | 589 }; |
590 | 590 |
591 static const KeyEventTestData kTestAccess1 = { | 591 static const KeyEventTestData kTestAccess1 = { |
592 base::VKEY_1, false, false, true, false, | 592 app::VKEY_1, false, false, true, false, |
593 false, false, false, false, 4, | 593 false, false, false, false, 4, |
594 { "D 18 0 false false true false", | 594 { "D 18 0 false false true false", |
595 "D 49 0 false false true false", | 595 "D 49 0 false false true false", |
596 "U 49 0 false false true false", | 596 "U 49 0 false false true false", |
597 "U 18 0 false false true false" } | 597 "U 18 0 false false true false" } |
598 }; | 598 }; |
599 #endif | 599 #endif |
600 | 600 |
601 ASSERT_TRUE(test_server()->Start()); | 601 ASSERT_TRUE(test_server()->Start()); |
602 | 602 |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
669 | 669 |
670 BringBrowserWindowToFront(); | 670 BringBrowserWindowToFront(); |
671 GURL url = test_server()->GetURL(kTestingPage); | 671 GURL url = test_server()->GetURL(kTestingPage); |
672 ui_test_utils::NavigateToURL(browser(), url); | 672 ui_test_utils::NavigateToURL(browser(), url); |
673 | 673 |
674 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); | 674 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); |
675 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 675 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
676 | 676 |
677 #if defined(OS_WIN) || defined(TOOLKIT_VIEWS) | 677 #if defined(OS_WIN) || defined(TOOLKIT_VIEWS) |
678 static const KeyEventTestData kTestCtrlT = { | 678 static const KeyEventTestData kTestCtrlT = { |
679 base::VKEY_T, true, false, false, false, | 679 app::VKEY_T, true, false, false, false, |
680 true, false, false, false, 1, | 680 true, false, false, false, 1, |
681 { "D 17 0 true false false false" } | 681 { "D 17 0 true false false false" } |
682 }; | 682 }; |
683 | 683 |
684 ASSERT_EQ(1, browser()->tab_count()); | 684 ASSERT_EQ(1, browser()->tab_count()); |
685 // Press Ctrl+T, which will open a new tab. | 685 // Press Ctrl+T, which will open a new tab. |
686 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCtrlT)); | 686 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCtrlT)); |
687 EXPECT_EQ(2, browser()->tab_count()); | 687 EXPECT_EQ(2, browser()->tab_count()); |
688 browser()->SelectNumberedTab(0); | 688 browser()->SelectNumberedTab(0); |
689 ASSERT_EQ(0, browser()->selected_index()); | 689 ASSERT_EQ(0, browser()->selected_index()); |
690 | 690 |
691 int result_length; | 691 int result_length; |
692 ASSERT_NO_FATAL_FAILURE(GetResultLength(0, &result_length)); | 692 ASSERT_NO_FATAL_FAILURE(GetResultLength(0, &result_length)); |
693 EXPECT_EQ(1, result_length); | 693 EXPECT_EQ(1, result_length); |
694 | 694 |
695 // Reserved accelerators can't be suppressed. | 695 // Reserved accelerators can't be suppressed. |
696 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); | 696 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); |
697 // Press Ctrl+W, which will close the tab. | 697 // Press Ctrl+W, which will close the tab. |
698 ASSERT_NO_FATAL_FAILURE(SendKey(base::VKEY_W, true, false, false, false)); | 698 ASSERT_NO_FATAL_FAILURE(SendKey(app::VKEY_W, true, false, false, false)); |
699 EXPECT_EQ(1, browser()->tab_count()); | 699 EXPECT_EQ(1, browser()->tab_count()); |
700 #elif defined(OS_MACOSX) | 700 #elif defined(OS_MACOSX) |
701 static const KeyEventTestData kTestCmdT = { | 701 static const KeyEventTestData kTestCmdT = { |
702 base::VKEY_T, false, false, false, true, | 702 app::VKEY_T, false, false, false, true, |
703 true, false, false, false, 1, | 703 true, false, false, false, 1, |
704 { "D 91 0 false false false true" } | 704 { "D 91 0 false false false true" } |
705 }; | 705 }; |
706 | 706 |
707 ASSERT_EQ(1, browser()->tab_count()); | 707 ASSERT_EQ(1, browser()->tab_count()); |
708 // Press Cmd+T, which will open a new tab. | 708 // Press Cmd+T, which will open a new tab. |
709 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCmdT)); | 709 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCmdT)); |
710 EXPECT_EQ(2, browser()->tab_count()); | 710 EXPECT_EQ(2, browser()->tab_count()); |
711 browser()->SelectNumberedTab(0); | 711 browser()->SelectNumberedTab(0); |
712 ASSERT_EQ(0, browser()->selected_index()); | 712 ASSERT_EQ(0, browser()->selected_index()); |
713 | 713 |
714 int result_length; | 714 int result_length; |
715 ASSERT_NO_FATAL_FAILURE(GetResultLength(0, &result_length)); | 715 ASSERT_NO_FATAL_FAILURE(GetResultLength(0, &result_length)); |
716 EXPECT_EQ(1, result_length); | 716 EXPECT_EQ(1, result_length); |
717 | 717 |
718 // Reserved accelerators can't be suppressed. | 718 // Reserved accelerators can't be suppressed. |
719 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); | 719 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); |
720 // Press Cmd+W, which will close the tab. | 720 // Press Cmd+W, which will close the tab. |
721 ASSERT_NO_FATAL_FAILURE(SendKey(base::VKEY_W, false, false, false, true)); | 721 ASSERT_NO_FATAL_FAILURE(SendKey(app::VKEY_W, false, false, false, true)); |
722 EXPECT_EQ(1, browser()->tab_count()); | 722 EXPECT_EQ(1, browser()->tab_count()); |
723 #elif defined(TOOLKIT_GTK) | 723 #elif defined(TOOLKIT_GTK) |
724 // Ctrl-[a-z] are not treated as reserved accelerators on GTK. | 724 // Ctrl-[a-z] are not treated as reserved accelerators on GTK. |
725 static const KeyEventTestData kTestCtrlT = { | 725 static const KeyEventTestData kTestCtrlT = { |
726 base::VKEY_T, true, false, false, false, | 726 app::VKEY_T, true, false, false, false, |
727 false, false, false, false, 2, | 727 false, false, false, false, 2, |
728 { "D 17 0 true false false false", | 728 { "D 17 0 true false false false", |
729 "D 84 0 true false false false" } | 729 "D 84 0 true false false false" } |
730 }; | 730 }; |
731 | 731 |
732 static const KeyEventTestData kTestCtrlPageDown = { | 732 static const KeyEventTestData kTestCtrlPageDown = { |
733 base::VKEY_NEXT, true, false, false, false, | 733 app::VKEY_NEXT, true, false, false, false, |
734 true, false, false, false, 1, | 734 true, false, false, false, 1, |
735 { "D 17 0 true false false false" } | 735 { "D 17 0 true false false false" } |
736 }; | 736 }; |
737 | 737 |
738 static const KeyEventTestData kTestCtrlTab = { | 738 static const KeyEventTestData kTestCtrlTab = { |
739 base::VKEY_TAB, true, false, false, false, | 739 app::VKEY_TAB, true, false, false, false, |
740 true, false, false, false, 1, | 740 true, false, false, false, 1, |
741 { "D 17 0 true false false false" } | 741 { "D 17 0 true false false false" } |
742 }; | 742 }; |
743 | 743 |
744 static const KeyEventTestData kTestCtrlTBlocked = { | 744 static const KeyEventTestData kTestCtrlTBlocked = { |
745 base::VKEY_T, true, false, false, false, | 745 app::VKEY_T, true, false, false, false, |
746 true, false, false, false, 4, | 746 true, false, false, false, 4, |
747 { "D 17 0 true false false false", | 747 { "D 17 0 true false false false", |
748 "D 84 0 true false false false", | 748 "D 84 0 true false false false", |
749 "U 84 0 true false false false", | 749 "U 84 0 true false false false", |
750 "U 17 0 true false false false" } | 750 "U 17 0 true false false false" } |
751 }; | 751 }; |
752 | 752 |
753 static const KeyEventTestData kTestCtrlWBlocked = { | 753 static const KeyEventTestData kTestCtrlWBlocked = { |
754 base::VKEY_W, true, false, false, false, | 754 app::VKEY_W, true, false, false, false, |
755 true, false, false, false, 4, | 755 true, false, false, false, 4, |
756 { "D 17 0 true false false false", | 756 { "D 17 0 true false false false", |
757 "D 87 0 true false false false", | 757 "D 87 0 true false false false", |
758 "U 87 0 true false false false", | 758 "U 87 0 true false false false", |
759 "U 17 0 true false false false" } | 759 "U 17 0 true false false false" } |
760 }; | 760 }; |
761 | 761 |
762 ASSERT_EQ(1, browser()->tab_count()); | 762 ASSERT_EQ(1, browser()->tab_count()); |
763 | 763 |
764 // Ctrl+T should be blockable. | 764 // Ctrl+T should be blockable. |
(...skipping 16 matching lines...) Expand all Loading... |
781 ASSERT_EQ(1, browser()->selected_index()); | 781 ASSERT_EQ(1, browser()->selected_index()); |
782 | 782 |
783 // Ctrl+W should be blockable. | 783 // Ctrl+W should be blockable. |
784 browser()->SelectNumberedTab(0); | 784 browser()->SelectNumberedTab(0); |
785 ASSERT_EQ(0, browser()->selected_index()); | 785 ASSERT_EQ(0, browser()->selected_index()); |
786 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCtrlWBlocked)); | 786 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(0, kTestCtrlWBlocked)); |
787 ASSERT_EQ(2, browser()->tab_count()); | 787 ASSERT_EQ(2, browser()->tab_count()); |
788 | 788 |
789 // Ctrl+F4 to close the tab. | 789 // Ctrl+F4 to close the tab. |
790 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); | 790 ASSERT_NO_FATAL_FAILURE(SuppressAllEvents(0, true)); |
791 ASSERT_NO_FATAL_FAILURE(SendKey(base::VKEY_F4, true, false, false, false)); | 791 ASSERT_NO_FATAL_FAILURE(SendKey(app::VKEY_F4, true, false, false, false)); |
792 ASSERT_EQ(1, browser()->tab_count()); | 792 ASSERT_EQ(1, browser()->tab_count()); |
793 #endif | 793 #endif |
794 } | 794 } |
795 | 795 |
796 #if defined(OS_MACOSX) | 796 #if defined(OS_MACOSX) |
797 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, EditorKeyBindings) { | 797 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, EditorKeyBindings) { |
798 static const KeyEventTestData kTestCtrlA = { | 798 static const KeyEventTestData kTestCtrlA = { |
799 base::VKEY_A, true, false, false, false, | 799 app::VKEY_A, true, false, false, false, |
800 false, false, false, false, 4, | 800 false, false, false, false, 4, |
801 { "D 17 0 true false false false", | 801 { "D 17 0 true false false false", |
802 "D 65 0 true false false false", | 802 "D 65 0 true false false false", |
803 "U 65 0 true false false false", | 803 "U 65 0 true false false false", |
804 "U 17 0 true false false false" } | 804 "U 17 0 true false false false" } |
805 }; | 805 }; |
806 | 806 |
807 static const KeyEventTestData kTestCtrlF = { | 807 static const KeyEventTestData kTestCtrlF = { |
808 base::VKEY_F, true, false, false, false, | 808 app::VKEY_F, true, false, false, false, |
809 false, false, false, false, 4, | 809 false, false, false, false, 4, |
810 { "D 17 0 true false false false", | 810 { "D 17 0 true false false false", |
811 "D 70 0 true false false false", | 811 "D 70 0 true false false false", |
812 "U 70 0 true false false false", | 812 "U 70 0 true false false false", |
813 "U 17 0 true false false false" } | 813 "U 17 0 true false false false" } |
814 }; | 814 }; |
815 | 815 |
816 static const KeyEventTestData kTestCtrlK = { | 816 static const KeyEventTestData kTestCtrlK = { |
817 base::VKEY_K, true, false, false, false, | 817 app::VKEY_K, true, false, false, false, |
818 false, false, false, false, 4, | 818 false, false, false, false, 4, |
819 { "D 17 0 true false false false", | 819 { "D 17 0 true false false false", |
820 "D 75 0 true false false false", | 820 "D 75 0 true false false false", |
821 "U 75 0 true false false false", | 821 "U 75 0 true false false false", |
822 "U 17 0 true false false false" } | 822 "U 17 0 true false false false" } |
823 }; | 823 }; |
824 | 824 |
825 ASSERT_TRUE(test_server()->Start()); | 825 ASSERT_TRUE(test_server()->Start()); |
826 | 826 |
827 BringBrowserWindowToFront(); | 827 BringBrowserWindowToFront(); |
(...skipping 11 matching lines...) Expand all Loading... |
839 // Forward one character | 839 // Forward one character |
840 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlF)); | 840 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlF)); |
841 // Delete to the end of the line. | 841 // Delete to the end of the line. |
842 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlK)); | 842 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlK)); |
843 EXPECT_NO_FATAL_FAILURE(CheckTextBoxValue(tab_index, L"A", L"H")); | 843 EXPECT_NO_FATAL_FAILURE(CheckTextBoxValue(tab_index, L"A", L"H")); |
844 } | 844 } |
845 #endif | 845 #endif |
846 | 846 |
847 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, PageUpDownKeys) { | 847 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, PageUpDownKeys) { |
848 static const KeyEventTestData kTestPageUp = { | 848 static const KeyEventTestData kTestPageUp = { |
849 base::VKEY_PRIOR, false, false, false, false, | 849 app::VKEY_PRIOR, false, false, false, false, |
850 false, false, false, false, 2, | 850 false, false, false, false, 2, |
851 { "D 33 0 false false false false", | 851 { "D 33 0 false false false false", |
852 "U 33 0 false false false false" } | 852 "U 33 0 false false false false" } |
853 }; | 853 }; |
854 | 854 |
855 static const KeyEventTestData kTestPageDown = { | 855 static const KeyEventTestData kTestPageDown = { |
856 base::VKEY_NEXT, false, false, false, false, | 856 app::VKEY_NEXT, false, false, false, false, |
857 false, false, false, false, 2, | 857 false, false, false, false, 2, |
858 { "D 34 0 false false false false", | 858 { "D 34 0 false false false false", |
859 "U 34 0 false false false false" } | 859 "U 34 0 false false false false" } |
860 }; | 860 }; |
861 | 861 |
862 ASSERT_TRUE(test_server()->Start()); | 862 ASSERT_TRUE(test_server()->Start()); |
863 | 863 |
864 BringBrowserWindowToFront(); | 864 BringBrowserWindowToFront(); |
865 GURL url = test_server()->GetURL(kTestingPage); | 865 GURL url = test_server()->GetURL(kTestingPage); |
866 ui_test_utils::NavigateToURL(browser(), url); | 866 ui_test_utils::NavigateToURL(browser(), url); |
867 | 867 |
868 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); | 868 ASSERT_NO_FATAL_FAILURE(ClickOnView(VIEW_ID_TAB_CONTAINER)); |
869 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 869 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
870 | 870 |
871 int tab_index = browser()->selected_index(); | 871 int tab_index = browser()->selected_index(); |
872 ASSERT_NO_FATAL_FAILURE(SetFocusedElement(tab_index, L"A")); | 872 ASSERT_NO_FATAL_FAILURE(SetFocusedElement(tab_index, L"A")); |
873 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestPageUp)); | 873 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestPageUp)); |
874 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestPageDown)); | 874 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestPageDown)); |
875 EXPECT_NO_FATAL_FAILURE(CheckTextBoxValue(tab_index, L"A", L"")); | 875 EXPECT_NO_FATAL_FAILURE(CheckTextBoxValue(tab_index, L"A", L"")); |
876 } | 876 } |
877 | 877 |
878 #if defined(OS_WIN) || defined(TOOLKIT_VIEWS) | 878 #if defined(OS_WIN) || defined(TOOLKIT_VIEWS) |
879 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, FocusMenuBarByAltKey) { | 879 IN_PROC_BROWSER_TEST_F(BrowserKeyEventsTest, FocusMenuBarByAltKey) { |
880 static const KeyEventTestData kTestAltKey = { | 880 static const KeyEventTestData kTestAltKey = { |
881 base::VKEY_MENU, false, false, false, false, | 881 app::VKEY_MENU, false, false, false, false, |
882 false, false, false, false, 2, | 882 false, false, false, false, 2, |
883 { "D 18 0 false false true false", | 883 { "D 18 0 false false true false", |
884 "U 18 0 false false true false" } | 884 "U 18 0 false false true false" } |
885 }; | 885 }; |
886 | 886 |
887 static const KeyEventTestData kTestAltKeySuppress = { | 887 static const KeyEventTestData kTestAltKeySuppress = { |
888 base::VKEY_MENU, false, false, false, false, | 888 app::VKEY_MENU, false, false, false, false, |
889 true, false, false, false, 2, | 889 true, false, false, false, 2, |
890 { "D 18 0 false false true false", | 890 { "D 18 0 false false true false", |
891 "U 18 0 false false true false" } | 891 "U 18 0 false false true false" } |
892 }; | 892 }; |
893 | 893 |
894 static const KeyEventTestData kTestCtrlAltKey = { | 894 static const KeyEventTestData kTestCtrlAltKey = { |
895 base::VKEY_MENU, true, false, false, false, | 895 app::VKEY_MENU, true, false, false, false, |
896 false, false, false, false, 4, | 896 false, false, false, false, 4, |
897 { "D 17 0 true false false false", | 897 { "D 17 0 true false false false", |
898 "D 18 0 true false true false", | 898 "D 18 0 true false true false", |
899 "U 18 0 true false true false", | 899 "U 18 0 true false true false", |
900 "U 17 0 true false false false" } | 900 "U 17 0 true false false false" } |
901 }; | 901 }; |
902 | 902 |
903 ASSERT_TRUE(test_server()->Start()); | 903 ASSERT_TRUE(test_server()->Start()); |
904 | 904 |
905 BringBrowserWindowToFront(); | 905 BringBrowserWindowToFront(); |
(...skipping 15 matching lines...) Expand all Loading... |
921 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestAltKeySuppress)); | 921 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestAltKeySuppress)); |
922 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 922 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
923 | 923 |
924 // Ctrl+Alt should have no effect. | 924 // Ctrl+Alt should have no effect. |
925 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlAltKey)); | 925 EXPECT_NO_FATAL_FAILURE(TestKeyEvent(tab_index, kTestCtrlAltKey)); |
926 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); | 926 ASSERT_TRUE(IsViewFocused(VIEW_ID_TAB_CONTAINER_FOCUS_VIEW)); |
927 } | 927 } |
928 #endif | 928 #endif |
929 | 929 |
930 } // namespace | 930 } // namespace |
OLD | NEW |