OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 <stddef.h> | 5 #include <stddef.h> |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/location.h" | 9 #include "base/location.h" |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 818 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
829 | 829 |
830 private: | 830 private: |
831 ui::ModalType type_; | 831 ui::ModalType type_; |
832 | 832 |
833 DISALLOW_COPY_AND_ASSIGN(ModalDialogDelegate); | 833 DISALLOW_COPY_AND_ASSIGN(ModalDialogDelegate); |
834 }; | 834 }; |
835 | 835 |
836 // Tests whether the focused window is set correctly when a modal window is | 836 // Tests whether the focused window is set correctly when a modal window is |
837 // created and destroyed. When it is destroyed it should focus the owner window. | 837 // created and destroyed. When it is destroyed it should focus the owner window. |
838 TEST_F(WidgetTestInteractive, WindowModalWindowDestroyedActivationTest) { | 838 TEST_F(WidgetTestInteractive, WindowModalWindowDestroyedActivationTest) { |
839 // Fails on mus due to focus issues. http://crbug.com/611601 | |
840 if (IsMus()) | |
841 return; | |
842 | |
843 TestWidgetFocusChangeListener focus_listener; | 839 TestWidgetFocusChangeListener focus_listener; |
844 WidgetFocusManager::GetInstance()->AddFocusChangeListener(&focus_listener); | 840 WidgetFocusManager::GetInstance()->AddFocusChangeListener(&focus_listener); |
845 const std::vector<gfx::NativeView>& focus_changes = | 841 const std::vector<gfx::NativeView>& focus_changes = |
846 focus_listener.focus_changes(); | 842 focus_listener.focus_changes(); |
847 | 843 |
848 // Create a top level widget. | 844 // Create a top level widget. |
849 Widget top_level_widget; | 845 Widget top_level_widget; |
850 Widget::InitParams init_params = | 846 Widget::InitParams init_params = |
851 CreateParams(Widget::InitParams::TYPE_WINDOW); | 847 CreateParams(Widget::InitParams::TYPE_WINDOW); |
852 init_params.show_state = ui::SHOW_STATE_NORMAL; | 848 init_params.show_state = ui::SHOW_STATE_NORMAL; |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
904 // those. | 900 // those. |
905 #if defined(OS_MACOSX) && !defined(USE_AURA) | 901 #if defined(OS_MACOSX) && !defined(USE_AURA) |
906 #define MAYBE_SystemModalWindowReleasesCapture \ | 902 #define MAYBE_SystemModalWindowReleasesCapture \ |
907 DISABLED_SystemModalWindowReleasesCapture | 903 DISABLED_SystemModalWindowReleasesCapture |
908 #else | 904 #else |
909 #define MAYBE_SystemModalWindowReleasesCapture SystemModalWindowReleasesCapture | 905 #define MAYBE_SystemModalWindowReleasesCapture SystemModalWindowReleasesCapture |
910 #endif | 906 #endif |
911 | 907 |
912 // Test that when opening a system-modal window, capture is released. | 908 // Test that when opening a system-modal window, capture is released. |
913 TEST_F(WidgetTestInteractive, MAYBE_SystemModalWindowReleasesCapture) { | 909 TEST_F(WidgetTestInteractive, MAYBE_SystemModalWindowReleasesCapture) { |
914 // Crashes on mus due to capture issue. http://crbug.com/611764 | |
915 if (IsMus()) | |
916 return; | |
917 | |
918 TestWidgetFocusChangeListener focus_listener; | 910 TestWidgetFocusChangeListener focus_listener; |
919 WidgetFocusManager::GetInstance()->AddFocusChangeListener(&focus_listener); | 911 WidgetFocusManager::GetInstance()->AddFocusChangeListener(&focus_listener); |
920 | 912 |
921 // Create a top level widget. | 913 // Create a top level widget. |
922 Widget top_level_widget; | 914 Widget top_level_widget; |
923 Widget::InitParams init_params = | 915 Widget::InitParams init_params = |
924 CreateParams(Widget::InitParams::TYPE_WINDOW); | 916 CreateParams(Widget::InitParams::TYPE_WINDOW); |
925 init_params.show_state = ui::SHOW_STATE_NORMAL; | 917 init_params.show_state = ui::SHOW_STATE_NORMAL; |
926 gfx::Rect initial_bounds(0, 0, 500, 500); | 918 gfx::Rect initial_bounds(0, 0, 500, 500); |
927 init_params.bounds = initial_bounds; | 919 init_params.bounds = initial_bounds; |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
999 textfield_test_api.touch_selection_controller())); | 991 textfield_test_api.touch_selection_controller())); |
1000 | 992 |
1001 EXPECT_TRUE(textfield->HasFocus()); | 993 EXPECT_TRUE(textfield->HasFocus()); |
1002 EXPECT_TRUE(widget->IsActive()); | 994 EXPECT_TRUE(widget->IsActive()); |
1003 EXPECT_TRUE(ui::TouchSelectionMenuRunner::GetInstance()->IsRunning()); | 995 EXPECT_TRUE(ui::TouchSelectionMenuRunner::GetInstance()->IsRunning()); |
1004 widget->CloseNow(); | 996 widget->CloseNow(); |
1005 } | 997 } |
1006 #endif // defined(USE_AURA) | 998 #endif // defined(USE_AURA) |
1007 | 999 |
1008 TEST_F(WidgetTestInteractive, DisableViewDoesNotActivateWidget) { | 1000 TEST_F(WidgetTestInteractive, DisableViewDoesNotActivateWidget) { |
1009 // Times out on mus. See http://crbug.com/612193 | 1001 // TODO: see http://crbug.com/678070 for details. |
1010 if (IsMus()) | 1002 if (IsMus()) |
1011 return; | 1003 return; |
1012 | 1004 |
1013 #if defined(OS_WIN) | 1005 #if defined(OS_WIN) |
1014 views_delegate()->set_use_desktop_native_widgets(true); | 1006 views_delegate()->set_use_desktop_native_widgets(true); |
1015 #endif // !defined(OS_WIN) | 1007 #endif // !defined(OS_WIN) |
1016 | 1008 |
1017 // Create first widget and view, activate the widget, and focus the view. | 1009 // Create first widget and view, activate the widget, and focus the view. |
1018 Widget widget1; | 1010 Widget widget1; |
1019 Widget::InitParams params1 = CreateParams(Widget::InitParams::TYPE_POPUP); | 1011 Widget::InitParams params1 = CreateParams(Widget::InitParams::TYPE_POPUP); |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1192 // Clean up. | 1184 // Clean up. |
1193 toplevel->Close(); | 1185 toplevel->Close(); |
1194 RunPendingMessages(); | 1186 RunPendingMessages(); |
1195 } | 1187 } |
1196 | 1188 |
1197 // Testing initial focus is assigned properly for normal top-level widgets, | 1189 // Testing initial focus is assigned properly for normal top-level widgets, |
1198 // and subclasses that specify a initially focused child view. | 1190 // and subclasses that specify a initially focused child view. |
1199 TEST_F(WidgetTestInteractive, InitialFocus) { | 1191 TEST_F(WidgetTestInteractive, InitialFocus) { |
1200 // TODO: test uses GetContext(), which is not applicable to aura-mus. | 1192 // TODO: test uses GetContext(), which is not applicable to aura-mus. |
1201 // http://crbug.com/663809. | 1193 // http://crbug.com/663809. |
1202 if (IsAuraMusClient()) | 1194 if (IsMus()) |
1203 return; | 1195 return; |
1204 | 1196 |
1205 // By default, there is no initially focused view (even if there is a | 1197 // By default, there is no initially focused view (even if there is a |
1206 // focusable subview). | 1198 // focusable subview). |
1207 Widget* toplevel(CreateTopLevelPlatformWidget()); | 1199 Widget* toplevel(CreateTopLevelPlatformWidget()); |
1208 View* view = new View; | 1200 View* view = new View; |
1209 view->SetFocusBehavior(View::FocusBehavior::ALWAYS); | 1201 view->SetFocusBehavior(View::FocusBehavior::ALWAYS); |
1210 toplevel->GetContentsView()->AddChildView(view); | 1202 toplevel->GetContentsView()->AddChildView(view); |
1211 | 1203 |
1212 ShowSync(toplevel); | 1204 ShowSync(toplevel); |
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1336 return CreatePlatformDesktopNativeWidgetImpl(params, widget, nullptr); | 1328 return CreatePlatformDesktopNativeWidgetImpl(params, widget, nullptr); |
1337 return CreatePlatformNativeWidgetImpl(params, widget, kDefault, nullptr); | 1329 return CreatePlatformNativeWidgetImpl(params, widget, kDefault, nullptr); |
1338 } | 1330 } |
1339 | 1331 |
1340 private: | 1332 private: |
1341 DISALLOW_COPY_AND_ASSIGN(WidgetCaptureTest); | 1333 DISALLOW_COPY_AND_ASSIGN(WidgetCaptureTest); |
1342 }; | 1334 }; |
1343 | 1335 |
1344 // See description in TestCapture(). | 1336 // See description in TestCapture(). |
1345 TEST_F(WidgetCaptureTest, Capture) { | 1337 TEST_F(WidgetCaptureTest, Capture) { |
| 1338 // TODO: capture isn't global in mus. http://crbug.com/678057. |
| 1339 if (IsMus()) |
| 1340 return; |
| 1341 |
1346 TestCapture(false); | 1342 TestCapture(false); |
1347 } | 1343 } |
1348 | 1344 |
1349 // Tests to ensure capture is correctly released from a Widget with capture when | 1345 // Tests to ensure capture is correctly released from a Widget with capture when |
1350 // it is destroyed. Test for crbug.com/622201. | 1346 // it is destroyed. Test for crbug.com/622201. |
1351 TEST_F(WidgetCaptureTest, DestroyWithCapture_CloseNow) { | 1347 TEST_F(WidgetCaptureTest, DestroyWithCapture_CloseNow) { |
1352 CaptureLostState capture_state; | 1348 CaptureLostState capture_state; |
1353 CaptureLostTrackingWidget* widget = | 1349 CaptureLostTrackingWidget* widget = |
1354 new CaptureLostTrackingWidget(&capture_state); | 1350 new CaptureLostTrackingWidget(&capture_state); |
1355 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW); | 1351 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW); |
1356 params.native_widget = CreateNativeWidget(params, true, widget); | 1352 params.native_widget = CreateNativeWidget(params, true, widget); |
1357 widget->Init(params); | 1353 widget->Init(params); |
1358 widget->Show(); | 1354 widget->Show(); |
1359 | 1355 |
1360 widget->SetCapture(widget->GetRootView()); | 1356 widget->SetCapture(widget->GetRootView()); |
1361 EXPECT_TRUE(widget->HasCapture()); | 1357 EXPECT_TRUE(widget->HasCapture()); |
1362 EXPECT_FALSE(capture_state.GetAndClearGotCaptureLost()); | 1358 EXPECT_FALSE(capture_state.GetAndClearGotCaptureLost()); |
1363 widget->CloseNow(); | 1359 widget->CloseNow(); |
1364 | 1360 |
1365 // Fails on mus. http://crbug.com/611764 | 1361 EXPECT_TRUE(capture_state.GetAndClearGotCaptureLost()); |
1366 if (IsMus()) | |
1367 EXPECT_FALSE(capture_state.GetAndClearGotCaptureLost()); | |
1368 else | |
1369 EXPECT_TRUE(capture_state.GetAndClearGotCaptureLost()); | |
1370 } | 1362 } |
1371 | 1363 |
1372 TEST_F(WidgetCaptureTest, DestroyWithCapture_Close) { | 1364 TEST_F(WidgetCaptureTest, DestroyWithCapture_Close) { |
1373 CaptureLostState capture_state; | 1365 CaptureLostState capture_state; |
1374 CaptureLostTrackingWidget* widget = | 1366 CaptureLostTrackingWidget* widget = |
1375 new CaptureLostTrackingWidget(&capture_state); | 1367 new CaptureLostTrackingWidget(&capture_state); |
1376 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW); | 1368 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW); |
1377 params.native_widget = CreateNativeWidget(params, true, widget); | 1369 params.native_widget = CreateNativeWidget(params, true, widget); |
1378 widget->Init(params); | 1370 widget->Init(params); |
1379 widget->Show(); | 1371 widget->Show(); |
(...skipping 13 matching lines...) Expand all Loading... |
1393 widget.Init(params); | 1385 widget.Init(params); |
1394 widget.Show(); | 1386 widget.Show(); |
1395 | 1387 |
1396 widget.SetCapture(widget.GetRootView()); | 1388 widget.SetCapture(widget.GetRootView()); |
1397 EXPECT_TRUE(widget.HasCapture()); | 1389 EXPECT_TRUE(widget.HasCapture()); |
1398 } | 1390 } |
1399 | 1391 |
1400 #if !defined(OS_CHROMEOS) | 1392 #if !defined(OS_CHROMEOS) |
1401 // See description in TestCapture(). Creates DesktopNativeWidget. | 1393 // See description in TestCapture(). Creates DesktopNativeWidget. |
1402 TEST_F(WidgetCaptureTest, CaptureDesktopNativeWidget) { | 1394 TEST_F(WidgetCaptureTest, CaptureDesktopNativeWidget) { |
1403 // Fails on mus. http://crbug.com/611764 | |
1404 if (IsMus()) | |
1405 return; | |
1406 | |
1407 TestCapture(true); | 1395 TestCapture(true); |
1408 } | 1396 } |
1409 #endif | 1397 #endif |
1410 | 1398 |
1411 // Test that no state is set if capture fails. | 1399 // Test that no state is set if capture fails. |
1412 TEST_F(WidgetCaptureTest, FailedCaptureRequestIsNoop) { | 1400 TEST_F(WidgetCaptureTest, FailedCaptureRequestIsNoop) { |
1413 // Fails on mus. http://crbug.com/611764 | |
1414 if (IsMus()) | |
1415 return; | |
1416 // TODO: test uses GetContext(), which is not applicable to aura-mus. | 1401 // TODO: test uses GetContext(), which is not applicable to aura-mus. |
1417 // http://crbug.com/663809. | 1402 // http://crbug.com/663809. |
1418 if (IsAuraMusClient()) | 1403 if (IsMus()) |
1419 return; | 1404 return; |
1420 | 1405 |
1421 Widget widget; | 1406 Widget widget; |
1422 Widget::InitParams params = | 1407 Widget::InitParams params = |
1423 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS); | 1408 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS); |
1424 params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 1409 params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
1425 params.bounds = gfx::Rect(400, 400); | 1410 params.bounds = gfx::Rect(400, 400); |
1426 widget.Init(params); | 1411 widget.Init(params); |
1427 | 1412 |
1428 MouseView* mouse_view1 = new MouseView; | 1413 MouseView* mouse_view1 = new MouseView; |
(...skipping 24 matching lines...) Expand all Loading... |
1453 // TODO(tapted): Investigate for toolkit-views on Mac http;//crbug.com/441064. | 1438 // TODO(tapted): Investigate for toolkit-views on Mac http;//crbug.com/441064. |
1454 #if defined(OS_CHROMEOS) || defined(OS_WIN) || defined(OS_MACOSX) | 1439 #if defined(OS_CHROMEOS) || defined(OS_WIN) || defined(OS_MACOSX) |
1455 #define MAYBE_MouseExitOnCaptureGrab DISABLED_MouseExitOnCaptureGrab | 1440 #define MAYBE_MouseExitOnCaptureGrab DISABLED_MouseExitOnCaptureGrab |
1456 #else | 1441 #else |
1457 #define MAYBE_MouseExitOnCaptureGrab MouseExitOnCaptureGrab | 1442 #define MAYBE_MouseExitOnCaptureGrab MouseExitOnCaptureGrab |
1458 #endif | 1443 #endif |
1459 | 1444 |
1460 // Test that a synthetic mouse exit is sent to the widget which was handling | 1445 // Test that a synthetic mouse exit is sent to the widget which was handling |
1461 // mouse events when a different widget grabs capture. | 1446 // mouse events when a different widget grabs capture. |
1462 TEST_F(WidgetCaptureTest, MAYBE_MouseExitOnCaptureGrab) { | 1447 TEST_F(WidgetCaptureTest, MAYBE_MouseExitOnCaptureGrab) { |
1463 // Fails on mus. http://crbug.com/611764 | |
1464 if (IsMus()) | |
1465 return; | |
1466 | |
1467 Widget widget1; | 1448 Widget widget1; |
1468 Widget::InitParams params1 = | 1449 Widget::InitParams params1 = |
1469 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS); | 1450 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS); |
1470 params1.native_widget = CreateNativeWidget(params1, true, &widget1); | 1451 params1.native_widget = CreateNativeWidget(params1, true, &widget1); |
1471 params1.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 1452 params1.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
1472 widget1.Init(params1); | 1453 widget1.Init(params1); |
1473 MouseView* mouse_view1 = new MouseView; | 1454 MouseView* mouse_view1 = new MouseView; |
1474 widget1.SetContentsView(mouse_view1); | 1455 widget1.SetContentsView(mouse_view1); |
1475 widget1.Show(); | 1456 widget1.Show(); |
1476 widget1.SetBounds(gfx::Rect(300, 300)); | 1457 widget1.SetBounds(gfx::Rect(300, 300)); |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1520 bool activation_observed_; | 1501 bool activation_observed_; |
1521 | 1502 |
1522 DISALLOW_COPY_AND_ASSIGN(CaptureOnActivationObserver); | 1503 DISALLOW_COPY_AND_ASSIGN(CaptureOnActivationObserver); |
1523 }; | 1504 }; |
1524 | 1505 |
1525 } // namespace | 1506 } // namespace |
1526 | 1507 |
1527 // Test that setting capture on widget activation of a non-toplevel widget | 1508 // Test that setting capture on widget activation of a non-toplevel widget |
1528 // (e.g. a bubble on Linux) succeeds. | 1509 // (e.g. a bubble on Linux) succeeds. |
1529 TEST_F(WidgetCaptureTest, SetCaptureToNonToplevel) { | 1510 TEST_F(WidgetCaptureTest, SetCaptureToNonToplevel) { |
| 1511 // TODO: capture isn't global in mus. http://crbug.com/678057. |
| 1512 if (IsMus()) |
| 1513 return; |
| 1514 |
1530 Widget toplevel; | 1515 Widget toplevel; |
1531 Widget::InitParams toplevel_params = | 1516 Widget::InitParams toplevel_params = |
1532 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS); | 1517 CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS); |
1533 toplevel_params.native_widget = CreateNativeWidget(toplevel_params, true, | 1518 toplevel_params.native_widget = CreateNativeWidget(toplevel_params, true, |
1534 &toplevel); | 1519 &toplevel); |
1535 toplevel_params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 1520 toplevel_params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
1536 toplevel.Init(toplevel_params); | 1521 toplevel.Init(toplevel_params); |
1537 toplevel.Show(); | 1522 toplevel.Show(); |
1538 | 1523 |
1539 Widget* child = new Widget; | 1524 Widget* child = new Widget; |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1653 } | 1638 } |
1654 | 1639 |
1655 private: | 1640 private: |
1656 Widget* deactivate_widget_ = nullptr; | 1641 Widget* deactivate_widget_ = nullptr; |
1657 | 1642 |
1658 DISALLOW_COPY_AND_ASSIGN(WidgetInputMethodInteractiveTest); | 1643 DISALLOW_COPY_AND_ASSIGN(WidgetInputMethodInteractiveTest); |
1659 }; | 1644 }; |
1660 | 1645 |
1661 // Test input method focus changes affected by top window activaction. | 1646 // Test input method focus changes affected by top window activaction. |
1662 TEST_F(WidgetInputMethodInteractiveTest, Activation) { | 1647 TEST_F(WidgetInputMethodInteractiveTest, Activation) { |
| 1648 if (IsMus()) |
| 1649 return; |
| 1650 |
1663 Widget* widget = CreateWidget(); | 1651 Widget* widget = CreateWidget(); |
1664 Textfield* textfield = new Textfield; | 1652 Textfield* textfield = new Textfield; |
1665 widget->GetRootView()->AddChildView(textfield); | 1653 widget->GetRootView()->AddChildView(textfield); |
1666 textfield->RequestFocus(); | 1654 textfield->RequestFocus(); |
1667 | 1655 |
1668 ShowSync(widget); | 1656 ShowSync(widget); |
1669 | 1657 |
1670 EXPECT_EQ(ui::TEXT_INPUT_TYPE_TEXT, | 1658 EXPECT_EQ(ui::TEXT_INPUT_TYPE_TEXT, |
1671 widget->GetInputMethod()->GetTextInputType()); | 1659 widget->GetInputMethod()->GetTextInputType()); |
1672 | 1660 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1714 EXPECT_TRUE(widget->IsActive()); | 1702 EXPECT_TRUE(widget->IsActive()); |
1715 EXPECT_EQ(ui::TEXT_INPUT_TYPE_TEXT, | 1703 EXPECT_EQ(ui::TEXT_INPUT_TYPE_TEXT, |
1716 widget->GetInputMethod()->GetTextInputType()); | 1704 widget->GetInputMethod()->GetTextInputType()); |
1717 #endif | 1705 #endif |
1718 widget->CloseNow(); | 1706 widget->CloseNow(); |
1719 } | 1707 } |
1720 | 1708 |
1721 // Test input method focus changes affected by focus changes cross 2 windows | 1709 // Test input method focus changes affected by focus changes cross 2 windows |
1722 // which shares the same top window. | 1710 // which shares the same top window. |
1723 TEST_F(WidgetInputMethodInteractiveTest, TwoWindows) { | 1711 TEST_F(WidgetInputMethodInteractiveTest, TwoWindows) { |
1724 // Fails on mus. http://crbug.com/611766 | |
1725 if (IsMus()) | |
1726 return; | |
1727 | |
1728 Widget* parent = CreateWidget(); | 1712 Widget* parent = CreateWidget(); |
1729 parent->SetBounds(gfx::Rect(100, 100, 100, 100)); | 1713 parent->SetBounds(gfx::Rect(100, 100, 100, 100)); |
1730 | 1714 |
1731 Widget* child = CreateChildNativeWidgetWithParent(parent); | 1715 Widget* child = CreateChildNativeWidgetWithParent(parent); |
1732 child->SetBounds(gfx::Rect(0, 0, 50, 50)); | 1716 child->SetBounds(gfx::Rect(0, 0, 50, 50)); |
1733 child->Show(); | 1717 child->Show(); |
1734 | 1718 |
1735 Textfield* textfield_parent = new Textfield; | 1719 Textfield* textfield_parent = new Textfield; |
1736 Textfield* textfield_child = new Textfield; | 1720 Textfield* textfield_child = new Textfield; |
1737 textfield_parent->SetTextInputType(ui::TEXT_INPUT_TYPE_PASSWORD); | 1721 textfield_parent->SetTextInputType(ui::TEXT_INPUT_TYPE_PASSWORD); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1824 | 1808 |
1825 ui::KeyEvent key_event2(key_event); | 1809 ui::KeyEvent key_event2(key_event); |
1826 widget->OnKeyEvent(&key_event2); | 1810 widget->OnKeyEvent(&key_event2); |
1827 EXPECT_FALSE(key_event2.stopped_propagation()); | 1811 EXPECT_FALSE(key_event2.stopped_propagation()); |
1828 | 1812 |
1829 widget->CloseNow(); | 1813 widget->CloseNow(); |
1830 } | 1814 } |
1831 | 1815 |
1832 } // namespace test | 1816 } // namespace test |
1833 } // namespace views | 1817 } // namespace views |
OLD | NEW |