Index: chrome/browser/ui/ash/palette_delegate_chromeos.cc |
diff --git a/chrome/browser/ui/ash/palette_delegate_chromeos.cc b/chrome/browser/ui/ash/palette_delegate_chromeos.cc |
index 9e74b3cb72b0853c873bedc748170b5dc54cf732..ec2defa2b0379677466d5c8050a0e27dfde46082 100644 |
--- a/chrome/browser/ui/ash/palette_delegate_chromeos.cc |
+++ b/chrome/browser/ui/ash/palette_delegate_chromeos.cc |
@@ -4,6 +4,11 @@ |
#include "chrome/browser/ui/ash/palette_delegate_chromeos.h" |
+#include "ash/accelerators/accelerator_controller_delegate_aura.h" |
+#include "ash/magnifier/partial_magnification_controller.h" |
+#include "ash/screenshot_delegate.h" |
+#include "ash/shell.h" |
+#include "ash/utility/screenshot_controller.h" |
#include "chrome/browser/chromeos/note_taking_app_utils.h" |
#include "chrome/browser/profiles/profile_manager.h" |
@@ -28,4 +33,29 @@ bool PaletteDelegateChromeOS::HasNoteApp() { |
return chromeos::IsNoteTakingAppAvailable(GetProfile()); |
} |
+void PaletteDelegateChromeOS::SetPartialMagnifierState(bool enabled) { |
+ ash::PartialMagnificationController* controller = |
+ ash::Shell::GetInstance()->partial_magnification_controller(); |
+ controller->SetEnabled(enabled); |
+} |
+ |
+void PaletteDelegateChromeOS::TakeScreenshot() { |
+ auto* screenshot_delegate = ash::Shell::GetInstance() |
+ ->accelerator_controller_delegate() |
+ ->screenshot_delegate(); |
+ screenshot_delegate->HandleTakeScreenshotForAllRootWindows(); |
+} |
+ |
+void PaletteDelegateChromeOS::TakePartialScreenshot() { |
+ auto* screenshot_controller = |
+ ash::Shell::GetInstance()->screenshot_controller(); |
+ auto* screenshot_delegate = ash::Shell::GetInstance() |
+ ->accelerator_controller_delegate() |
+ ->screenshot_delegate(); |
+ |
+ screenshot_controller->set_pen_events_only(true); |
+ screenshot_controller->StartPartialScreenshotSession( |
+ screenshot_delegate, false /* draw_overlay_immediately */); |
+} |
+ |
} // namespace chromeos |