| 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 #include "ash/display/display_controller.h" | 5 #include "ash/display/display_controller.h" |
| 6 #include "ash/display/display_manager.h" | 6 #include "ash/display/display_manager.h" |
| 7 #include "ash/root_window_controller.h" | 7 #include "ash/root_window_controller.h" |
| 8 #include "ash/screen_util.h" | 8 #include "ash/screen_util.h" |
| 9 #include "ash/shell.h" | 9 #include "ash/shell.h" |
| 10 #include "ash/shell_window_ids.h" | 10 #include "ash/shell_window_ids.h" |
| (...skipping 850 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 861 lock_widget->Show(); | 861 lock_widget->Show(); |
| 862 textfield->RequestFocus(); | 862 textfield->RequestFocus(); |
| 863 | 863 |
| 864 aura::client::FocusClient* focus_client = | 864 aura::client::FocusClient* focus_client = |
| 865 aura::client::GetFocusClient(root_windows[0]); | 865 aura::client::GetFocusClient(root_windows[0]); |
| 866 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); | 866 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); |
| 867 | 867 |
| 868 // The lock window should get events on both root windows. | 868 // The lock window should get events on both root windows. |
| 869 aura::test::EventGenerator& event_generator(GetEventGenerator()); | 869 aura::test::EventGenerator& event_generator(GetEventGenerator()); |
| 870 | 870 |
| 871 event_generator.set_current_host(root_windows[0]->GetHost()); | 871 event_generator.set_current_target(root_windows[0]); |
| 872 event_generator.PressKey(ui::VKEY_A, 0); | 872 event_generator.PressKey(ui::VKEY_A, 0); |
| 873 event_generator.ReleaseKey(ui::VKEY_A, 0); | 873 event_generator.ReleaseKey(ui::VKEY_A, 0); |
| 874 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); | 874 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); |
| 875 EXPECT_EQ("a", base::UTF16ToASCII(textfield->text())); | 875 EXPECT_EQ("a", base::UTF16ToASCII(textfield->text())); |
| 876 | 876 |
| 877 event_generator.set_current_host(root_windows[1]->GetHost()); | 877 event_generator.set_current_target(root_windows[1]); |
| 878 event_generator.PressKey(ui::VKEY_B, 0); | 878 event_generator.PressKey(ui::VKEY_B, 0); |
| 879 event_generator.ReleaseKey(ui::VKEY_B, 0); | 879 event_generator.ReleaseKey(ui::VKEY_B, 0); |
| 880 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); | 880 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); |
| 881 EXPECT_EQ("ab", base::UTF16ToASCII(textfield->text())); | 881 EXPECT_EQ("ab", base::UTF16ToASCII(textfield->text())); |
| 882 | 882 |
| 883 // Deleting 2nd display. The lock window still should get the events. | 883 // Deleting 2nd display. The lock window still should get the events. |
| 884 UpdateDisplay("100x100"); | 884 UpdateDisplay("100x100"); |
| 885 event_generator.PressKey(ui::VKEY_C, 0); | 885 event_generator.PressKey(ui::VKEY_C, 0); |
| 886 event_generator.ReleaseKey(ui::VKEY_C, 0); | 886 event_generator.ReleaseKey(ui::VKEY_C, 0); |
| 887 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); | 887 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); |
| 888 EXPECT_EQ("abc", base::UTF16ToASCII(textfield->text())); | 888 EXPECT_EQ("abc", base::UTF16ToASCII(textfield->text())); |
| 889 | 889 |
| 890 // Creating 2nd display again, and lock window still should get events | 890 // Creating 2nd display again, and lock window still should get events |
| 891 // on both root windows. | 891 // on both root windows. |
| 892 UpdateDisplay("100x100,200x200"); | 892 UpdateDisplay("100x100,200x200"); |
| 893 root_windows = Shell::GetAllRootWindows(); | 893 root_windows = Shell::GetAllRootWindows(); |
| 894 event_generator.set_current_host(root_windows[0]->GetHost()); | 894 event_generator.set_current_target(root_windows[0]); |
| 895 event_generator.PressKey(ui::VKEY_D, 0); | 895 event_generator.PressKey(ui::VKEY_D, 0); |
| 896 event_generator.ReleaseKey(ui::VKEY_D, 0); | 896 event_generator.ReleaseKey(ui::VKEY_D, 0); |
| 897 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); | 897 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); |
| 898 EXPECT_EQ("abcd", base::UTF16ToASCII(textfield->text())); | 898 EXPECT_EQ("abcd", base::UTF16ToASCII(textfield->text())); |
| 899 | 899 |
| 900 event_generator.set_current_host(root_windows[1]->GetHost()); | 900 event_generator.set_current_target(root_windows[1]); |
| 901 event_generator.PressKey(ui::VKEY_E, 0); | 901 event_generator.PressKey(ui::VKEY_E, 0); |
| 902 event_generator.ReleaseKey(ui::VKEY_E, 0); | 902 event_generator.ReleaseKey(ui::VKEY_E, 0); |
| 903 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); | 903 EXPECT_EQ(lock_widget->GetNativeView(), focus_client->GetFocusedWindow()); |
| 904 EXPECT_EQ("abcde", base::UTF16ToASCII(textfield->text())); | 904 EXPECT_EQ("abcde", base::UTF16ToASCII(textfield->text())); |
| 905 } | 905 } |
| 906 | 906 |
| 907 TEST_F(ExtendedDesktopTest, PassiveGrab) { | 907 TEST_F(ExtendedDesktopTest, PassiveGrab) { |
| 908 if (!SupportsMultipleDisplays()) | 908 if (!SupportsMultipleDisplays()) |
| 909 return; | 909 return; |
| 910 | 910 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 929 generator.ReleaseLeftButton(); | 929 generator.ReleaseLeftButton(); |
| 930 EXPECT_EQ("-999,-999 -999,-999", event_handler.GetLocationsAndReset()); | 930 EXPECT_EQ("-999,-999 -999,-999", event_handler.GetLocationsAndReset()); |
| 931 | 931 |
| 932 generator.MoveMouseTo(400, 150); | 932 generator.MoveMouseTo(400, 150); |
| 933 EXPECT_EQ("100,150 100,150", event_handler.GetLocationsAndReset()); | 933 EXPECT_EQ("100,150 100,150", event_handler.GetLocationsAndReset()); |
| 934 | 934 |
| 935 ash::Shell::GetInstance()->RemovePreTargetHandler(&event_handler); | 935 ash::Shell::GetInstance()->RemovePreTargetHandler(&event_handler); |
| 936 } | 936 } |
| 937 | 937 |
| 938 } // namespace ash | 938 } // namespace ash |
| OLD | NEW |