Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(120)

Side by Side Diff: ash/accelerators/accelerator_controller_unittest.cc

Issue 2101263004: mash: Migrate AccessibilityDelegate access to WmShell. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address comments. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ash/accelerators/accelerator_controller.cc ('k') | ash/accelerators/spoken_feedback_toggler.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/accelerators/accelerator_controller.h" 5 #include "ash/accelerators/accelerator_controller.h"
6 6
7 #include "ash/accelerators/accelerator_table.h" 7 #include "ash/accelerators/accelerator_table.h"
8 #include "ash/aura/wm_window_aura.h" 8 #include "ash/aura/wm_window_aura.h"
9 #include "ash/common/accessibility_delegate.h" 9 #include "ash/common/accessibility_delegate.h"
10 #include "ash/common/accessibility_types.h" 10 #include "ash/common/accessibility_types.h"
(...skipping 819 matching lines...) Expand 10 before | Expand all | Expand 10 after
830 EXPECT_EQ(2, delegate->handle_take_screenshot_count()); 830 EXPECT_EQ(2, delegate->handle_take_screenshot_count());
831 EXPECT_TRUE(ProcessInController(ui::Accelerator( 831 EXPECT_TRUE(ProcessInController(ui::Accelerator(
832 ui::VKEY_MEDIA_LAUNCH_APP1, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN))); 832 ui::VKEY_MEDIA_LAUNCH_APP1, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN)));
833 EXPECT_EQ(2, delegate->handle_take_screenshot_count()); 833 EXPECT_EQ(2, delegate->handle_take_screenshot_count());
834 } 834 }
835 const ui::Accelerator volume_mute(ui::VKEY_VOLUME_MUTE, ui::EF_NONE); 835 const ui::Accelerator volume_mute(ui::VKEY_VOLUME_MUTE, ui::EF_NONE);
836 const ui::Accelerator volume_down(ui::VKEY_VOLUME_DOWN, ui::EF_NONE); 836 const ui::Accelerator volume_down(ui::VKEY_VOLUME_DOWN, ui::EF_NONE);
837 const ui::Accelerator volume_up(ui::VKEY_VOLUME_UP, ui::EF_NONE); 837 const ui::Accelerator volume_up(ui::VKEY_VOLUME_UP, ui::EF_NONE);
838 { 838 {
839 TestVolumeControlDelegate* delegate = new TestVolumeControlDelegate; 839 TestVolumeControlDelegate* delegate = new TestVolumeControlDelegate;
840 ash::WmShell::Get()->system_tray_delegate()->SetVolumeControlDelegate( 840 WmShell::Get()->system_tray_delegate()->SetVolumeControlDelegate(
841 std::unique_ptr<VolumeControlDelegate>(delegate)); 841 std::unique_ptr<VolumeControlDelegate>(delegate));
842 EXPECT_EQ(0, delegate->handle_volume_mute_count()); 842 EXPECT_EQ(0, delegate->handle_volume_mute_count());
843 EXPECT_TRUE(ProcessInController(volume_mute)); 843 EXPECT_TRUE(ProcessInController(volume_mute));
844 EXPECT_EQ(1, delegate->handle_volume_mute_count()); 844 EXPECT_EQ(1, delegate->handle_volume_mute_count());
845 EXPECT_EQ(volume_mute, delegate->last_accelerator()); 845 EXPECT_EQ(volume_mute, delegate->last_accelerator());
846 EXPECT_EQ(0, delegate->handle_volume_down_count()); 846 EXPECT_EQ(0, delegate->handle_volume_down_count());
847 EXPECT_TRUE(ProcessInController(volume_down)); 847 EXPECT_TRUE(ProcessInController(volume_down));
848 EXPECT_EQ(1, delegate->handle_volume_down_count()); 848 EXPECT_EQ(1, delegate->handle_volume_down_count());
849 EXPECT_EQ(volume_down, delegate->last_accelerator()); 849 EXPECT_EQ(volume_down, delegate->last_accelerator());
850 EXPECT_EQ(0, delegate->handle_volume_up_count()); 850 EXPECT_EQ(0, delegate->handle_volume_up_count());
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
939 // Lock screen 939 // Lock screen
940 // NOTE: Accelerators that do not work on the lock screen need to be 940 // NOTE: Accelerators that do not work on the lock screen need to be
941 // tested before the sequence below is invoked because it causes a side 941 // tested before the sequence below is invoked because it causes a side
942 // effect of locking the screen. 942 // effect of locking the screen.
943 EXPECT_TRUE(ProcessInController( 943 EXPECT_TRUE(ProcessInController(
944 ui::Accelerator(ui::VKEY_L, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN))); 944 ui::Accelerator(ui::VKEY_L, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN)));
945 #endif 945 #endif
946 } 946 }
947 947
948 TEST_F(AcceleratorControllerTest, GlobalAcceleratorsToggleAppList) { 948 TEST_F(AcceleratorControllerTest, GlobalAcceleratorsToggleAppList) {
949 AccessibilityDelegate* delegate = 949 AccessibilityDelegate* delegate = WmShell::Get()->GetAccessibilityDelegate();
950 ash::Shell::GetInstance()->accessibility_delegate(); 950 EXPECT_FALSE(Shell::GetInstance()->GetAppListTargetVisibility());
951 EXPECT_FALSE(ash::Shell::GetInstance()->GetAppListTargetVisibility());
952 951
953 // The press event should not open the AppList, the release should instead. 952 // The press event should not open the AppList, the release should instead.
954 EXPECT_FALSE( 953 EXPECT_FALSE(
955 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE))); 954 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE)));
956 EXPECT_EQ(ui::VKEY_LWIN, GetCurrentAccelerator().key_code()); 955 EXPECT_EQ(ui::VKEY_LWIN, GetCurrentAccelerator().key_code());
957 956
958 EXPECT_FALSE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 957 EXPECT_FALSE(Shell::GetInstance()->GetAppListTargetVisibility());
959 958
960 EXPECT_TRUE( 959 EXPECT_TRUE(
961 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE))); 960 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE)));
962 EXPECT_TRUE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 961 EXPECT_TRUE(Shell::GetInstance()->GetAppListTargetVisibility());
963 962
964 EXPECT_EQ(ui::VKEY_LWIN, GetPreviousAccelerator().key_code()); 963 EXPECT_EQ(ui::VKEY_LWIN, GetPreviousAccelerator().key_code());
965 964
966 // When spoken feedback is on, the AppList should not toggle. 965 // When spoken feedback is on, the AppList should not toggle.
967 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE); 966 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE);
968 EXPECT_FALSE( 967 EXPECT_FALSE(
969 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE))); 968 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE)));
970 EXPECT_FALSE( 969 EXPECT_FALSE(
971 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE))); 970 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE)));
972 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE); 971 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE);
973 EXPECT_TRUE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 972 EXPECT_TRUE(Shell::GetInstance()->GetAppListTargetVisibility());
974 973
975 EXPECT_FALSE( 974 EXPECT_FALSE(
976 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE))); 975 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE)));
977 EXPECT_TRUE( 976 EXPECT_TRUE(
978 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE))); 977 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE)));
979 EXPECT_FALSE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 978 EXPECT_FALSE(Shell::GetInstance()->GetAppListTargetVisibility());
980 979
981 // When spoken feedback is on, the AppList should not toggle. 980 // When spoken feedback is on, the AppList should not toggle.
982 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE); 981 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE);
983 EXPECT_FALSE( 982 EXPECT_FALSE(
984 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE))); 983 ProcessInController(ui::Accelerator(ui::VKEY_LWIN, ui::EF_NONE)));
985 EXPECT_FALSE( 984 EXPECT_FALSE(
986 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE))); 985 ProcessInController(ReleaseAccelerator(ui::VKEY_LWIN, ui::EF_NONE)));
987 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE); 986 delegate->ToggleSpokenFeedback(A11Y_NOTIFICATION_NONE);
988 EXPECT_FALSE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 987 EXPECT_FALSE(Shell::GetInstance()->GetAppListTargetVisibility());
989 988
990 #if defined(OS_CHROMEOS) 989 #if defined(OS_CHROMEOS)
991 // The press of VKEY_BROWSER_SEARCH should toggle the AppList 990 // The press of VKEY_BROWSER_SEARCH should toggle the AppList
992 EXPECT_TRUE(ProcessInController( 991 EXPECT_TRUE(ProcessInController(
993 ui::Accelerator(ui::VKEY_BROWSER_SEARCH, ui::EF_NONE))); 992 ui::Accelerator(ui::VKEY_BROWSER_SEARCH, ui::EF_NONE)));
994 EXPECT_TRUE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 993 EXPECT_TRUE(Shell::GetInstance()->GetAppListTargetVisibility());
995 EXPECT_FALSE(ProcessInController( 994 EXPECT_FALSE(ProcessInController(
996 ReleaseAccelerator(ui::VKEY_BROWSER_SEARCH, ui::EF_NONE))); 995 ReleaseAccelerator(ui::VKEY_BROWSER_SEARCH, ui::EF_NONE)));
997 EXPECT_TRUE(ash::Shell::GetInstance()->GetAppListTargetVisibility()); 996 EXPECT_TRUE(Shell::GetInstance()->GetAppListTargetVisibility());
998 #endif 997 #endif
999 } 998 }
1000 999
1001 TEST_F(AcceleratorControllerTest, ImeGlobalAccelerators) { 1000 TEST_F(AcceleratorControllerTest, ImeGlobalAccelerators) {
1002 // Test IME shortcuts. 1001 // Test IME shortcuts.
1003 ui::Accelerator control_space_down(ui::VKEY_SPACE, ui::EF_CONTROL_DOWN); 1002 ui::Accelerator control_space_down(ui::VKEY_SPACE, ui::EF_CONTROL_DOWN);
1004 control_space_down.set_type(ui::ET_KEY_PRESSED); 1003 control_space_down.set_type(ui::ET_KEY_PRESSED);
1005 ui::Accelerator control_space_up(ui::VKEY_SPACE, ui::EF_CONTROL_DOWN); 1004 ui::Accelerator control_space_up(ui::VKEY_SPACE, ui::EF_CONTROL_DOWN);
1006 control_space_up.set_type(ui::ET_KEY_RELEASED); 1005 control_space_up.set_type(ui::ET_KEY_RELEASED);
1007 const ui::Accelerator convert(ui::VKEY_CONVERT, ui::EF_NONE); 1006 const ui::Accelerator convert(ui::VKEY_CONVERT, ui::EF_NONE);
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after
1251 } 1250 }
1252 // Volume 1251 // Volume
1253 const ui::Accelerator volume_mute(ui::VKEY_VOLUME_MUTE, ui::EF_NONE); 1252 const ui::Accelerator volume_mute(ui::VKEY_VOLUME_MUTE, ui::EF_NONE);
1254 const ui::Accelerator volume_down(ui::VKEY_VOLUME_DOWN, ui::EF_NONE); 1253 const ui::Accelerator volume_down(ui::VKEY_VOLUME_DOWN, ui::EF_NONE);
1255 const ui::Accelerator volume_up(ui::VKEY_VOLUME_UP, ui::EF_NONE); 1254 const ui::Accelerator volume_up(ui::VKEY_VOLUME_UP, ui::EF_NONE);
1256 { 1255 {
1257 EXPECT_TRUE(ProcessInController(volume_mute)); 1256 EXPECT_TRUE(ProcessInController(volume_mute));
1258 EXPECT_TRUE(ProcessInController(volume_down)); 1257 EXPECT_TRUE(ProcessInController(volume_down));
1259 EXPECT_TRUE(ProcessInController(volume_up)); 1258 EXPECT_TRUE(ProcessInController(volume_up));
1260 TestVolumeControlDelegate* delegate = new TestVolumeControlDelegate; 1259 TestVolumeControlDelegate* delegate = new TestVolumeControlDelegate;
1261 ash::WmShell::Get()->system_tray_delegate()->SetVolumeControlDelegate( 1260 WmShell::Get()->system_tray_delegate()->SetVolumeControlDelegate(
1262 std::unique_ptr<VolumeControlDelegate>(delegate)); 1261 std::unique_ptr<VolumeControlDelegate>(delegate));
1263 EXPECT_EQ(0, delegate->handle_volume_mute_count()); 1262 EXPECT_EQ(0, delegate->handle_volume_mute_count());
1264 EXPECT_TRUE(ProcessInController(volume_mute)); 1263 EXPECT_TRUE(ProcessInController(volume_mute));
1265 EXPECT_EQ(1, delegate->handle_volume_mute_count()); 1264 EXPECT_EQ(1, delegate->handle_volume_mute_count());
1266 EXPECT_EQ(volume_mute, delegate->last_accelerator()); 1265 EXPECT_EQ(volume_mute, delegate->last_accelerator());
1267 EXPECT_EQ(0, delegate->handle_volume_down_count()); 1266 EXPECT_EQ(0, delegate->handle_volume_down_count());
1268 EXPECT_TRUE(ProcessInController(volume_down)); 1267 EXPECT_TRUE(ProcessInController(volume_down));
1269 EXPECT_EQ(1, delegate->handle_volume_down_count()); 1268 EXPECT_EQ(1, delegate->handle_volume_down_count());
1270 EXPECT_EQ(volume_down, delegate->last_accelerator()); 1269 EXPECT_EQ(volume_down, delegate->last_accelerator());
1271 EXPECT_EQ(0, delegate->handle_volume_up_count()); 1270 EXPECT_EQ(0, delegate->handle_volume_up_count());
1272 EXPECT_TRUE(ProcessInController(volume_up)); 1271 EXPECT_TRUE(ProcessInController(volume_up));
1273 EXPECT_EQ(1, delegate->handle_volume_up_count()); 1272 EXPECT_EQ(1, delegate->handle_volume_up_count());
1274 EXPECT_EQ(volume_up, delegate->last_accelerator()); 1273 EXPECT_EQ(volume_up, delegate->last_accelerator());
1275 } 1274 }
1276 } 1275 }
1277 #endif 1276 #endif
1278 1277
1279 TEST_F(AcceleratorControllerTest, DisallowedWithNoWindow) { 1278 TEST_F(AcceleratorControllerTest, DisallowedWithNoWindow) {
1280 AccessibilityDelegate* delegate = 1279 AccessibilityDelegate* delegate = WmShell::Get()->GetAccessibilityDelegate();
1281 ash::Shell::GetInstance()->accessibility_delegate();
1282 1280
1283 for (size_t i = 0; i < kActionsNeedingWindowLength; ++i) { 1281 for (size_t i = 0; i < kActionsNeedingWindowLength; ++i) {
1284 delegate->TriggerAccessibilityAlert(A11Y_ALERT_NONE); 1282 delegate->TriggerAccessibilityAlert(A11Y_ALERT_NONE);
1285 EXPECT_TRUE( 1283 EXPECT_TRUE(
1286 GetController()->PerformActionIfEnabled(kActionsNeedingWindow[i])); 1284 GetController()->PerformActionIfEnabled(kActionsNeedingWindow[i]));
1287 EXPECT_EQ(delegate->GetLastAccessibilityAlert(), A11Y_ALERT_WINDOW_NEEDED); 1285 EXPECT_EQ(delegate->GetLastAccessibilityAlert(), A11Y_ALERT_WINDOW_NEEDED);
1288 } 1286 }
1289 1287
1290 // Make sure we don't alert if we do have a window. 1288 // Make sure we don't alert if we do have a window.
1291 std::unique_ptr<aura::Window> window; 1289 std::unique_ptr<aura::Window> window;
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
1407 EXPECT_TRUE(IsMessageCenterEmpty()); 1405 EXPECT_TRUE(IsMessageCenterEmpty());
1408 1406
1409 // If the action is LOCK_SCREEN, we must reset the state by unlocking the 1407 // If the action is LOCK_SCREEN, we must reset the state by unlocking the
1410 // screen before we proceed testing the rest of accelerators. 1408 // screen before we proceed testing the rest of accelerators.
1411 ResetStateIfNeeded(); 1409 ResetStateIfNeeded();
1412 } 1410 }
1413 } 1411 }
1414 #endif // defined(OS_CHROMEOS) 1412 #endif // defined(OS_CHROMEOS)
1415 1413
1416 } // namespace ash 1414 } // namespace ash
OLDNEW
« no previous file with comments | « ash/accelerators/accelerator_controller.cc ('k') | ash/accelerators/spoken_feedback_toggler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698