| Index: ash/accelerators/accelerator_controller.cc
|
| diff --git a/ash/accelerators/accelerator_controller.cc b/ash/accelerators/accelerator_controller.cc
|
| index 229c7c444c3859235dd34fc5054a37ddd6f7aaf8..d52106b544425cf766b49fb2437c88fabde9bd03 100644
|
| --- a/ash/accelerators/accelerator_controller.cc
|
| +++ b/ash/accelerators/accelerator_controller.cc
|
| @@ -459,6 +459,16 @@ void HandleSwitchIme(ImeControlDelegate* ime_control_delegate,
|
| ime_control_delegate->HandleSwitchIme(accelerator);
|
| }
|
|
|
| +void HandleTakeActiveWindowScreenshot(ScreenshotDelegate* screenshot_delegate) {
|
| + base::RecordAction(UserMetricsAction("Accel_Take_Window_Screenshot"));
|
| + aura::Window* active_window = wm::GetActiveWindow();
|
| + if (!active_window)
|
| + return;
|
| + DCHECK(screenshot_delegate);
|
| + if (screenshot_delegate->CanTakeScreenshot())
|
| + screenshot_delegate->HandleTakeWindowScreenshot(active_window);
|
| +}
|
| +
|
| void HandleTakePartialScreenshot(ScreenshotDelegate* screenshot_delegate) {
|
| base::RecordAction(UserMetricsAction("Accel_Take_Partial_Screenshot"));
|
| DCHECK(screenshot_delegate);
|
| @@ -1081,6 +1091,7 @@ bool AcceleratorController::CanPerformAction(
|
| case SHOW_KEYBOARD_OVERLAY:
|
| case SHOW_SYSTEM_TRAY_BUBBLE:
|
| case SHOW_TASK_MANAGER:
|
| + case TAKE_ACTIVE_WINDOW_SCREENSHOT:
|
| case TAKE_PARTIAL_SCREENSHOT:
|
| case TAKE_SCREENSHOT:
|
| case TOGGLE_FULLSCREEN:
|
| @@ -1252,6 +1263,9 @@ void AcceleratorController::PerformAction(AcceleratorAction action,
|
| case SWITCH_IME:
|
| HandleSwitchIme(ime_control_delegate_.get(), accelerator);
|
| break;
|
| + case TAKE_ACTIVE_WINDOW_SCREENSHOT:
|
| + HandleTakeActiveWindowScreenshot(screenshot_delegate_.get());
|
| + break;
|
| case TAKE_PARTIAL_SCREENSHOT:
|
| HandleTakePartialScreenshot(screenshot_delegate_.get());
|
| break;
|
|
|