OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/common/accelerators/accelerator_controller.h" | 5 #include "ash/common/accelerators/accelerator_controller.h" |
6 | 6 |
7 #include "ash/common/wm/window_state.h" | 7 #include "ash/common/wm/window_state.h" |
| 8 #include "ash/common/wm_shell.h" |
8 #include "ash/shell.h" | 9 #include "ash/shell.h" |
9 #include "ash/wm/window_state_aura.h" | 10 #include "ash/wm/window_state_aura.h" |
10 #include "build/build_config.h" | 11 #include "build/build_config.h" |
11 #include "chrome/browser/ui/browser.h" | 12 #include "chrome/browser/ui/browser.h" |
12 #include "chrome/browser/ui/browser_window.h" | 13 #include "chrome/browser/ui/browser_window.h" |
13 #include "chrome/test/base/in_process_browser_test.h" | 14 #include "chrome/test/base/in_process_browser_test.h" |
14 #include "ui/events/test/event_generator.h" | 15 #include "ui/events/test/event_generator.h" |
15 | 16 |
16 #if defined(USE_X11) | 17 #if defined(USE_X11) |
17 #include "ui/events/test/events_test_utils_x11.h" | 18 #include "ui/events/test/events_test_utils_x11.h" |
18 #endif | 19 #endif |
19 | 20 |
20 #if defined(USE_X11) | 21 #if defined(USE_X11) |
21 typedef InProcessBrowserTest AcceleratorControllerBrowserTest; | 22 typedef InProcessBrowserTest AcceleratorControllerBrowserTest; |
22 | 23 |
23 // Test that pressing and holding Alt+ toggles the maximized state exactly once. | 24 // Test that pressing and holding Alt+ toggles the maximized state exactly once. |
24 // This test is a browser test to test that the EF_IS_REPEAT flag is correctly | 25 // This test is a browser test to test that the EF_IS_REPEAT flag is correctly |
25 // passed down to AcceleratorController (via a conversion to WebInputEvent). | 26 // passed down to AcceleratorController (via a conversion to WebInputEvent). |
26 // See crbug.com/434743 | 27 // See crbug.com/434743 |
27 IN_PROC_BROWSER_TEST_F(AcceleratorControllerBrowserTest, | 28 IN_PROC_BROWSER_TEST_F(AcceleratorControllerBrowserTest, |
28 RepeatedToggleMaximizeViaAccelerator) { | 29 RepeatedToggleMaximizeViaAccelerator) { |
29 ASSERT_TRUE(ash::Shell::HasInstance()) << "No Instance"; | 30 ASSERT_TRUE(ash::Shell::HasInstance()) << "No Instance"; |
30 AddTabAtIndex(0, | 31 AddTabAtIndex(0, |
31 GURL("data:text/html;base64,<html></html>"), | 32 GURL("data:text/html;base64,<html></html>"), |
32 ui::PAGE_TRANSITION_TYPED); | 33 ui::PAGE_TRANSITION_TYPED); |
33 browser()->window()->Show(); | 34 browser()->window()->Show(); |
34 | 35 |
35 ui::Accelerator accelerator(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); | 36 ui::Accelerator accelerator(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); |
36 ash::AcceleratorController* accelerator_controller = | 37 ash::AcceleratorController* accelerator_controller = |
37 ash::Shell::GetInstance()->accelerator_controller(); | 38 ash::WmShell::Get()->accelerator_controller(); |
38 ASSERT_TRUE(accelerator_controller->IsRegistered(accelerator)); | 39 ASSERT_TRUE(accelerator_controller->IsRegistered(accelerator)); |
39 | 40 |
40 ash::wm::WindowState* window_state = ash::wm::GetActiveWindowState(); | 41 ash::wm::WindowState* window_state = ash::wm::GetActiveWindowState(); |
41 EXPECT_FALSE(window_state->IsMaximized()); | 42 EXPECT_FALSE(window_state->IsMaximized()); |
42 | 43 |
43 ui::test::EventGenerator generator(ash::Shell::GetPrimaryRootWindow()); | 44 ui::test::EventGenerator generator(ash::Shell::GetPrimaryRootWindow()); |
44 generator.PressKey(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); | 45 generator.PressKey(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); |
45 EXPECT_TRUE(window_state->IsMaximized()); | 46 EXPECT_TRUE(window_state->IsMaximized()); |
46 | 47 |
47 generator.PressKey(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); | 48 generator.PressKey(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); |
48 | 49 |
49 generator.ReleaseKey(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); | 50 generator.ReleaseKey(ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN); |
50 EXPECT_TRUE(window_state->IsMaximized()); | 51 EXPECT_TRUE(window_state->IsMaximized()); |
51 } | 52 } |
52 #endif | 53 #endif |
OLD | NEW |