| 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/accelerators/accelerator_controller.h" | 5 #include "ash/accelerators/accelerator_controller.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "ash/accelerators/accelerator_commands.h" | 9 #include "ash/accelerators/accelerator_commands.h" |
| 10 #include "ash/accelerators/accelerator_controller_delegate.h" | 10 #include "ash/accelerators/accelerator_controller_delegate.h" |
| 11 #include "ash/accelerators/debug_commands.h" | 11 #include "ash/accelerators/debug_commands.h" |
| 12 #include "ash/accessibility_delegate.h" | 12 #include "ash/accessibility_delegate.h" |
| 13 #include "ash/accessibility_types.h" | 13 #include "ash/accessibility_types.h" |
| 14 #include "ash/focus_cycler.h" | 14 #include "ash/focus_cycler.h" |
| 15 #include "ash/ime_control_delegate.h" | 15 #include "ash/ime/ime_switch_type.h" |
| 16 #include "ash/media_controller.h" | 16 #include "ash/media_controller.h" |
| 17 #include "ash/multi_profile_uma.h" | 17 #include "ash/multi_profile_uma.h" |
| 18 #include "ash/new_window_controller.h" | 18 #include "ash/new_window_controller.h" |
| 19 #include "ash/resources/vector_icons/vector_icons.h" | 19 #include "ash/resources/vector_icons/vector_icons.h" |
| 20 #include "ash/root_window_controller.h" | 20 #include "ash/root_window_controller.h" |
| 21 #include "ash/rotator/window_rotation.h" | 21 #include "ash/rotator/window_rotation.h" |
| 22 #include "ash/session/session_controller.h" | 22 #include "ash/session/session_controller.h" |
| 23 #include "ash/shelf/shelf_widget.h" | 23 #include "ash/shelf/shelf_widget.h" |
| 24 #include "ash/shelf/wm_shelf.h" | 24 #include "ash/shelf/wm_shelf.h" |
| 25 #include "ash/shell.h" | 25 #include "ash/shell.h" |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 #include "ui/compositor/layer_animation_sequence.h" | 61 #include "ui/compositor/layer_animation_sequence.h" |
| 62 #include "ui/compositor/layer_animator.h" | 62 #include "ui/compositor/layer_animator.h" |
| 63 #include "ui/gfx/paint_vector_icon.h" | 63 #include "ui/gfx/paint_vector_icon.h" |
| 64 #include "ui/keyboard/keyboard_controller.h" | 64 #include "ui/keyboard/keyboard_controller.h" |
| 65 #include "ui/message_center/message_center.h" | 65 #include "ui/message_center/message_center.h" |
| 66 | 66 |
| 67 namespace ash { | 67 namespace ash { |
| 68 namespace { | 68 namespace { |
| 69 | 69 |
| 70 using base::UserMetricsAction; | 70 using base::UserMetricsAction; |
| 71 using chromeos::input_method::InputMethodManager; |
| 71 using message_center::Notification; | 72 using message_center::Notification; |
| 72 | 73 |
| 73 // Identifier for the high contrast toggle accelerator notification. | 74 // Identifier for the high contrast toggle accelerator notification. |
| 74 const char kHighContrastToggleAccelNotificationId[] = | 75 const char kHighContrastToggleAccelNotificationId[] = |
| 75 "chrome://settings/accessibility/highcontrast"; | 76 "chrome://settings/accessibility/highcontrast"; |
| 76 | 77 |
| 77 // The notification delegate that will be used to open the keyboard shortcut | 78 // The notification delegate that will be used to open the keyboard shortcut |
| 78 // help page when the notification is clicked. | 79 // help page when the notification is clicked. |
| 79 class DeprecatedAcceleratorNotificationDelegate | 80 class DeprecatedAcceleratorNotificationDelegate |
| 80 : public message_center::NotificationDelegate { | 81 : public message_center::NotificationDelegate { |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 } | 165 } |
| 165 | 166 |
| 166 void RecordUmaHistogram(const char* histogram_name, | 167 void RecordUmaHistogram(const char* histogram_name, |
| 167 DeprecatedAcceleratorUsage sample) { | 168 DeprecatedAcceleratorUsage sample) { |
| 168 auto* histogram = base::LinearHistogram::FactoryGet( | 169 auto* histogram = base::LinearHistogram::FactoryGet( |
| 169 histogram_name, 1, DEPRECATED_USAGE_COUNT, DEPRECATED_USAGE_COUNT + 1, | 170 histogram_name, 1, DEPRECATED_USAGE_COUNT, DEPRECATED_USAGE_COUNT + 1, |
| 170 base::HistogramBase::kUmaTargetedHistogramFlag); | 171 base::HistogramBase::kUmaTargetedHistogramFlag); |
| 171 histogram->Add(sample); | 172 histogram->Add(sample); |
| 172 } | 173 } |
| 173 | 174 |
| 175 void RecordImeSwitchByAccelerator() { |
| 176 UMA_HISTOGRAM_ENUMERATION("InputMethod.ImeSwitch", |
| 177 ImeSwitchType::kAccelerator, ImeSwitchType::kCount); |
| 178 } |
| 179 |
| 174 void HandleCycleBackwardMRU(const ui::Accelerator& accelerator) { | 180 void HandleCycleBackwardMRU(const ui::Accelerator& accelerator) { |
| 175 if (accelerator.key_code() == ui::VKEY_TAB) | 181 if (accelerator.key_code() == ui::VKEY_TAB) |
| 176 base::RecordAction(base::UserMetricsAction("Accel_PrevWindow_Tab")); | 182 base::RecordAction(base::UserMetricsAction("Accel_PrevWindow_Tab")); |
| 177 | 183 |
| 178 Shell::Get()->window_cycle_controller()->HandleCycleWindow( | 184 Shell::Get()->window_cycle_controller()->HandleCycleWindow( |
| 179 WindowCycleController::BACKWARD); | 185 WindowCycleController::BACKWARD); |
| 180 } | 186 } |
| 181 | 187 |
| 182 void HandleCycleForwardMRU(const ui::Accelerator& accelerator) { | 188 void HandleCycleForwardMRU(const ui::Accelerator& accelerator) { |
| 183 if (accelerator.key_code() == ui::VKEY_TAB) | 189 if (accelerator.key_code() == ui::VKEY_TAB) |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 244 if (accelerator.key_code() == ui::VKEY_T) | 250 if (accelerator.key_code() == ui::VKEY_T) |
| 245 base::RecordAction(UserMetricsAction("Accel_NewTab_T")); | 251 base::RecordAction(UserMetricsAction("Accel_NewTab_T")); |
| 246 Shell::Get()->new_window_controller()->NewTab(); | 252 Shell::Get()->new_window_controller()->NewTab(); |
| 247 } | 253 } |
| 248 | 254 |
| 249 void HandleNewWindow() { | 255 void HandleNewWindow() { |
| 250 base::RecordAction(UserMetricsAction("Accel_New_Window")); | 256 base::RecordAction(UserMetricsAction("Accel_New_Window")); |
| 251 Shell::Get()->new_window_controller()->NewWindow(false /* is_incognito */); | 257 Shell::Get()->new_window_controller()->NewWindow(false /* is_incognito */); |
| 252 } | 258 } |
| 253 | 259 |
| 254 bool CanHandleNextIme(ImeControlDelegate* ime_control_delegate) { | 260 bool CanCycleInputMethod() { |
| 255 return ime_control_delegate && ime_control_delegate->CanCycleIme(); | 261 InputMethodManager* manager = InputMethodManager::Get(); |
| 262 DCHECK(manager); |
| 263 if (!manager->GetActiveIMEState()) { |
| 264 LOG(WARNING) << "Cannot cycle through input methods as they are not " |
| 265 "initialized yet."; |
| 266 return false; |
| 267 } |
| 268 return manager->GetActiveIMEState()->CanCycleInputMethod(); |
| 256 } | 269 } |
| 257 | 270 |
| 258 bool CanHandleCycleMru(const ui::Accelerator& accelerator) { | 271 bool CanHandleCycleMru(const ui::Accelerator& accelerator) { |
| 259 // Don't do anything when Alt+Tab is hit while a virtual keyboard is showing. | 272 // Don't do anything when Alt+Tab is hit while a virtual keyboard is showing. |
| 260 // Touchscreen users have better window switching options. It would be | 273 // Touchscreen users have better window switching options. It would be |
| 261 // preferable if we could tell whether this event actually came from a virtual | 274 // preferable if we could tell whether this event actually came from a virtual |
| 262 // keyboard, but there's no easy way to do so, thus we block Alt+Tab when the | 275 // keyboard, but there's no easy way to do so, thus we block Alt+Tab when the |
| 263 // virtual keyboard is showing, even if it came from a real keyboard. See | 276 // virtual keyboard is showing, even if it came from a real keyboard. See |
| 264 // http://crbug.com/638269 | 277 // http://crbug.com/638269 |
| 265 keyboard::KeyboardController* keyboard_controller = | 278 keyboard::KeyboardController* keyboard_controller = |
| 266 keyboard::KeyboardController::GetInstance(); | 279 keyboard::KeyboardController::GetInstance(); |
| 267 return !(keyboard_controller && keyboard_controller->keyboard_visible()); | 280 return !(keyboard_controller && keyboard_controller->keyboard_visible()); |
| 268 } | 281 } |
| 269 | 282 |
| 270 void HandleNextIme(ImeControlDelegate* ime_control_delegate) { | 283 void HandleNextIme() { |
| 271 base::RecordAction(UserMetricsAction("Accel_Next_Ime")); | 284 base::RecordAction(UserMetricsAction("Accel_Next_Ime")); |
| 272 ime_control_delegate->HandleNextIme(); | 285 RecordImeSwitchByAccelerator(); |
| 286 InputMethodManager::Get()->GetActiveIMEState()->SwitchToNextInputMethod(); |
| 273 } | 287 } |
| 274 | 288 |
| 275 void HandleOpenFeedbackPage() { | 289 void HandleOpenFeedbackPage() { |
| 276 base::RecordAction(UserMetricsAction("Accel_Open_Feedback_Page")); | 290 base::RecordAction(UserMetricsAction("Accel_Open_Feedback_Page")); |
| 277 Shell::Get()->new_window_controller()->OpenFeedbackPage(); | 291 Shell::Get()->new_window_controller()->OpenFeedbackPage(); |
| 278 } | 292 } |
| 279 | 293 |
| 280 bool CanHandlePreviousIme(ImeControlDelegate* ime_control_delegate) { | 294 void HandlePreviousIme(const ui::Accelerator& accelerator) { |
| 281 return ime_control_delegate && ime_control_delegate->CanCycleIme(); | |
| 282 } | |
| 283 | |
| 284 void HandlePreviousIme(ImeControlDelegate* ime_control_delegate, | |
| 285 const ui::Accelerator& accelerator) { | |
| 286 base::RecordAction(UserMetricsAction("Accel_Previous_Ime")); | 295 base::RecordAction(UserMetricsAction("Accel_Previous_Ime")); |
| 287 if (accelerator.key_state() == ui::Accelerator::KeyState::PRESSED) | 296 if (accelerator.key_state() == ui::Accelerator::KeyState::PRESSED) { |
| 288 ime_control_delegate->HandlePreviousIme(); | 297 RecordImeSwitchByAccelerator(); |
| 298 InputMethodManager::Get() |
| 299 ->GetActiveIMEState() |
| 300 ->SwitchToPreviousInputMethod(); |
| 301 } |
| 289 // Else: consume the Ctrl+Space ET_KEY_RELEASED event but do not do anything. | 302 // Else: consume the Ctrl+Space ET_KEY_RELEASED event but do not do anything. |
| 290 } | 303 } |
| 291 | 304 |
| 292 void HandleRestoreTab() { | 305 void HandleRestoreTab() { |
| 293 base::RecordAction(UserMetricsAction("Accel_Restore_Tab")); | 306 base::RecordAction(UserMetricsAction("Accel_Restore_Tab")); |
| 294 Shell::Get()->new_window_controller()->RestoreTab(); | 307 Shell::Get()->new_window_controller()->RestoreTab(); |
| 295 } | 308 } |
| 296 | 309 |
| 297 // Rotate the active window. | 310 // Rotate the active window. |
| 298 void HandleRotateActiveWindow() { | 311 void HandleRotateActiveWindow() { |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 345 tray->ShowDefaultView(BUBBLE_CREATE_NEW); | 358 tray->ShowDefaultView(BUBBLE_CREATE_NEW); |
| 346 tray->ActivateBubble(); | 359 tray->ActivateBubble(); |
| 347 } | 360 } |
| 348 } | 361 } |
| 349 | 362 |
| 350 void HandleShowTaskManager() { | 363 void HandleShowTaskManager() { |
| 351 base::RecordAction(UserMetricsAction("Accel_Show_Task_Manager")); | 364 base::RecordAction(UserMetricsAction("Accel_Show_Task_Manager")); |
| 352 Shell::Get()->new_window_controller()->ShowTaskManager(); | 365 Shell::Get()->new_window_controller()->ShowTaskManager(); |
| 353 } | 366 } |
| 354 | 367 |
| 355 bool CanHandleSwitchIme(ImeControlDelegate* ime_control_delegate, | 368 bool CanHandleSwitchIme(const ui::Accelerator& accelerator) { |
| 356 const ui::Accelerator& accelerator) { | 369 InputMethodManager* manager = InputMethodManager::Get(); |
| 357 return ime_control_delegate && | 370 DCHECK(manager); |
| 358 ime_control_delegate->CanSwitchIme(accelerator); | 371 if (!manager->GetActiveIMEState()) { |
| 372 LOG(WARNING) << "Cannot switch input methods as they are not " |
| 373 "initialized yet."; |
| 374 return false; |
| 375 } |
| 376 return manager->GetActiveIMEState()->CanSwitchInputMethod(accelerator); |
| 359 } | 377 } |
| 360 | 378 |
| 361 void HandleSwitchIme(ImeControlDelegate* ime_control_delegate, | 379 void HandleSwitchIme(const ui::Accelerator& accelerator) { |
| 362 const ui::Accelerator& accelerator) { | |
| 363 base::RecordAction(UserMetricsAction("Accel_Switch_Ime")); | 380 base::RecordAction(UserMetricsAction("Accel_Switch_Ime")); |
| 364 ime_control_delegate->HandleSwitchIme(accelerator); | 381 RecordImeSwitchByAccelerator(); |
| 382 InputMethodManager::Get()->GetActiveIMEState()->SwitchInputMethod( |
| 383 accelerator); |
| 365 } | 384 } |
| 366 | 385 |
| 367 bool CanHandleToggleAppList(const ui::Accelerator& accelerator, | 386 bool CanHandleToggleAppList(const ui::Accelerator& accelerator, |
| 368 const ui::Accelerator& previous_accelerator) { | 387 const ui::Accelerator& previous_accelerator) { |
| 369 if (accelerator.key_code() == ui::VKEY_LWIN) { | 388 if (accelerator.key_code() == ui::VKEY_LWIN) { |
| 370 // If something else was pressed between the Search key (LWIN) | 389 // If something else was pressed between the Search key (LWIN) |
| 371 // being pressed and released, then ignore the release of the | 390 // being pressed and released, then ignore the release of the |
| 372 // Search key. | 391 // Search key. |
| 373 if (previous_accelerator.key_state() != | 392 if (previous_accelerator.key_state() != |
| 374 ui::Accelerator::KeyState::PRESSED || | 393 ui::Accelerator::KeyState::PRESSED || |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 728 return true; | 747 return true; |
| 729 } | 748 } |
| 730 return false; | 749 return false; |
| 731 } | 750 } |
| 732 | 751 |
| 733 AcceleratorController::AcceleratorProcessingRestriction | 752 AcceleratorController::AcceleratorProcessingRestriction |
| 734 AcceleratorController::GetCurrentAcceleratorRestriction() { | 753 AcceleratorController::GetCurrentAcceleratorRestriction() { |
| 735 return GetAcceleratorProcessingRestriction(-1); | 754 return GetAcceleratorProcessingRestriction(-1); |
| 736 } | 755 } |
| 737 | 756 |
| 738 void AcceleratorController::SetImeControlDelegate( | |
| 739 std::unique_ptr<ImeControlDelegate> ime_control_delegate) { | |
| 740 ime_control_delegate_ = std::move(ime_control_delegate); | |
| 741 } | |
| 742 | |
| 743 bool AcceleratorController::ShouldCloseMenuAndRepostAccelerator( | 757 bool AcceleratorController::ShouldCloseMenuAndRepostAccelerator( |
| 744 const ui::Accelerator& accelerator) const { | 758 const ui::Accelerator& accelerator) const { |
| 745 auto itr = accelerators_.find(accelerator); | 759 auto itr = accelerators_.find(accelerator); |
| 746 if (itr == accelerators_.end()) | 760 if (itr == accelerators_.end()) |
| 747 return false; // Menu shouldn't be closed for an invalid accelerator. | 761 return false; // Menu shouldn't be closed for an invalid accelerator. |
| 748 | 762 |
| 749 AcceleratorAction action = itr->second; | 763 AcceleratorAction action = itr->second; |
| 750 return actions_keeping_menu_open_.count(action) == 0; | 764 return actions_keeping_menu_open_.count(action) == 0; |
| 751 } | 765 } |
| 752 | 766 |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 905 case DEBUG_TOGGLE_WALLPAPER_MODE: | 919 case DEBUG_TOGGLE_WALLPAPER_MODE: |
| 906 case DEBUG_TRIGGER_CRASH: | 920 case DEBUG_TRIGGER_CRASH: |
| 907 return debug::DebugAcceleratorsEnabled(); | 921 return debug::DebugAcceleratorsEnabled(); |
| 908 case DISABLE_CAPS_LOCK: | 922 case DISABLE_CAPS_LOCK: |
| 909 return CanHandleDisableCapsLock(previous_accelerator); | 923 return CanHandleDisableCapsLock(previous_accelerator); |
| 910 case LOCK_SCREEN: | 924 case LOCK_SCREEN: |
| 911 return CanHandleLock(); | 925 return CanHandleLock(); |
| 912 case NEW_INCOGNITO_WINDOW: | 926 case NEW_INCOGNITO_WINDOW: |
| 913 return CanHandleNewIncognitoWindow(); | 927 return CanHandleNewIncognitoWindow(); |
| 914 case NEXT_IME: | 928 case NEXT_IME: |
| 915 return CanHandleNextIme(ime_control_delegate_.get()); | 929 return CanCycleInputMethod(); |
| 916 case PREVIOUS_IME: | 930 case PREVIOUS_IME: |
| 917 return CanHandlePreviousIme(ime_control_delegate_.get()); | 931 return CanCycleInputMethod(); |
| 918 case SHOW_MESSAGE_CENTER_BUBBLE: | 932 case SHOW_MESSAGE_CENTER_BUBBLE: |
| 919 return CanHandleShowMessageCenterBubble(); | 933 return CanHandleShowMessageCenterBubble(); |
| 920 case SHOW_STYLUS_TOOLS: | 934 case SHOW_STYLUS_TOOLS: |
| 921 return CanHandleShowStylusTools(); | 935 return CanHandleShowStylusTools(); |
| 922 case SWITCH_IME: | 936 case SWITCH_IME: |
| 923 return CanHandleSwitchIme(ime_control_delegate_.get(), accelerator); | 937 return CanHandleSwitchIme(accelerator); |
| 924 case SWITCH_TO_PREVIOUS_USER: | 938 case SWITCH_TO_PREVIOUS_USER: |
| 925 case SWITCH_TO_NEXT_USER: | 939 case SWITCH_TO_NEXT_USER: |
| 926 return CanHandleCycleUser(); | 940 return CanHandleCycleUser(); |
| 927 case TOGGLE_APP_LIST: | 941 case TOGGLE_APP_LIST: |
| 928 return CanHandleToggleAppList(accelerator, previous_accelerator); | 942 return CanHandleToggleAppList(accelerator, previous_accelerator); |
| 929 case TOGGLE_CAPS_LOCK: | 943 case TOGGLE_CAPS_LOCK: |
| 930 return CanHandleToggleCapsLock(accelerator, previous_accelerator); | 944 return CanHandleToggleCapsLock(accelerator, previous_accelerator); |
| 931 case WINDOW_CYCLE_SNAP_LEFT: | 945 case WINDOW_CYCLE_SNAP_LEFT: |
| 932 case WINDOW_CYCLE_SNAP_RIGHT: | 946 case WINDOW_CYCLE_SNAP_RIGHT: |
| 933 return CanHandleWindowSnap(); | 947 return CanHandleWindowSnap(); |
| (...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1104 case NEW_INCOGNITO_WINDOW: | 1118 case NEW_INCOGNITO_WINDOW: |
| 1105 HandleNewIncognitoWindow(); | 1119 HandleNewIncognitoWindow(); |
| 1106 break; | 1120 break; |
| 1107 case NEW_TAB: | 1121 case NEW_TAB: |
| 1108 HandleNewTab(accelerator); | 1122 HandleNewTab(accelerator); |
| 1109 break; | 1123 break; |
| 1110 case NEW_WINDOW: | 1124 case NEW_WINDOW: |
| 1111 HandleNewWindow(); | 1125 HandleNewWindow(); |
| 1112 break; | 1126 break; |
| 1113 case NEXT_IME: | 1127 case NEXT_IME: |
| 1114 HandleNextIme(ime_control_delegate_.get()); | 1128 HandleNextIme(); |
| 1115 break; | 1129 break; |
| 1116 case OPEN_CROSH: | 1130 case OPEN_CROSH: |
| 1117 HandleCrosh(); | 1131 HandleCrosh(); |
| 1118 break; | 1132 break; |
| 1119 case OPEN_FEEDBACK_PAGE: | 1133 case OPEN_FEEDBACK_PAGE: |
| 1120 HandleOpenFeedbackPage(); | 1134 HandleOpenFeedbackPage(); |
| 1121 break; | 1135 break; |
| 1122 case OPEN_FILE_MANAGER: | 1136 case OPEN_FILE_MANAGER: |
| 1123 HandleFileManager(); | 1137 HandleFileManager(); |
| 1124 break; | 1138 break; |
| 1125 case OPEN_GET_HELP: | 1139 case OPEN_GET_HELP: |
| 1126 HandleGetHelp(); | 1140 HandleGetHelp(); |
| 1127 break; | 1141 break; |
| 1128 case PREVIOUS_IME: | 1142 case PREVIOUS_IME: |
| 1129 HandlePreviousIme(ime_control_delegate_.get(), accelerator); | 1143 HandlePreviousIme(accelerator); |
| 1130 break; | 1144 break; |
| 1131 case PRINT_UI_HIERARCHIES: | 1145 case PRINT_UI_HIERARCHIES: |
| 1132 debug::PrintUIHierarchies(); | 1146 debug::PrintUIHierarchies(); |
| 1133 break; | 1147 break; |
| 1134 case RESTORE_TAB: | 1148 case RESTORE_TAB: |
| 1135 HandleRestoreTab(); | 1149 HandleRestoreTab(); |
| 1136 break; | 1150 break; |
| 1137 case ROTATE_WINDOW: | 1151 case ROTATE_WINDOW: |
| 1138 HandleRotateActiveWindow(); | 1152 HandleRotateActiveWindow(); |
| 1139 break; | 1153 break; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 1152 case SHOW_SYSTEM_TRAY_BUBBLE: | 1166 case SHOW_SYSTEM_TRAY_BUBBLE: |
| 1153 HandleShowSystemTrayBubble(); | 1167 HandleShowSystemTrayBubble(); |
| 1154 break; | 1168 break; |
| 1155 case SHOW_TASK_MANAGER: | 1169 case SHOW_TASK_MANAGER: |
| 1156 HandleShowTaskManager(); | 1170 HandleShowTaskManager(); |
| 1157 break; | 1171 break; |
| 1158 case SUSPEND: | 1172 case SUSPEND: |
| 1159 HandleSuspend(); | 1173 HandleSuspend(); |
| 1160 break; | 1174 break; |
| 1161 case SWITCH_IME: | 1175 case SWITCH_IME: |
| 1162 HandleSwitchIme(ime_control_delegate_.get(), accelerator); | 1176 HandleSwitchIme(accelerator); |
| 1163 break; | 1177 break; |
| 1164 case SWITCH_TO_NEXT_USER: | 1178 case SWITCH_TO_NEXT_USER: |
| 1165 HandleCycleUser(CycleUserDirection::NEXT); | 1179 HandleCycleUser(CycleUserDirection::NEXT); |
| 1166 break; | 1180 break; |
| 1167 case SWITCH_TO_PREVIOUS_USER: | 1181 case SWITCH_TO_PREVIOUS_USER: |
| 1168 HandleCycleUser(CycleUserDirection::PREVIOUS); | 1182 HandleCycleUser(CycleUserDirection::PREVIOUS); |
| 1169 break; | 1183 break; |
| 1170 case TOGGLE_APP_LIST: | 1184 case TOGGLE_APP_LIST: |
| 1171 HandleToggleAppList(accelerator); | 1185 HandleToggleAppList(accelerator); |
| 1172 break; | 1186 break; |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1297 data->uma_histogram_name, data->notification_message_id, | 1311 data->uma_histogram_name, data->notification_message_id, |
| 1298 data->old_shortcut_id, data->new_shortcut_id); | 1312 data->old_shortcut_id, data->new_shortcut_id); |
| 1299 | 1313 |
| 1300 if (!data->deprecated_enabled) | 1314 if (!data->deprecated_enabled) |
| 1301 return AcceleratorProcessingStatus::STOP; | 1315 return AcceleratorProcessingStatus::STOP; |
| 1302 | 1316 |
| 1303 return AcceleratorProcessingStatus::PROCEED; | 1317 return AcceleratorProcessingStatus::PROCEED; |
| 1304 } | 1318 } |
| 1305 | 1319 |
| 1306 } // namespace ash | 1320 } // namespace ash |
| OLD | NEW |