Chromium Code Reviews| Index: chrome/browser/accessibility/accessibility_extension_api.cc |
| diff --git a/chrome/browser/accessibility/accessibility_extension_api.cc b/chrome/browser/accessibility/accessibility_extension_api.cc |
| index 504c126139a40723e0b530b7cad28541d77ef47c..bcee3614ce4cd3f4856743a1cfd0e45142200278 100644 |
| --- a/chrome/browser/accessibility/accessibility_extension_api.cc |
| +++ b/chrome/browser/accessibility/accessibility_extension_api.cc |
| @@ -25,6 +25,7 @@ |
| #include "extensions/browser/extension_system.h" |
| #include "extensions/browser/lazy_background_task_queue.h" |
| #include "extensions/common/error_utils.h" |
| +#include "extensions/common/image_util.h" |
| #include "extensions/common/manifest_handlers/background_info.h" |
| #if defined(OS_CHROMEOS) |
| @@ -82,6 +83,16 @@ AccessibilityPrivateSetFocusRingFunction::Run() { |
| rects.push_back(gfx::Rect(left, top, width, height)); |
| } |
| + std::string color_str; |
| + if (args_->GetSize() >= 2 && args_->GetString(1, &color_str)) { |
| + SkColor color; |
| + EXTENSION_FUNCTION_VALIDATE( |
|
Devlin
2017/03/30 21:58:05
This will result in killing the renderer if the st
dmazzoni
2017/03/31 20:24:05
Good idea, changed it to just return an error.
|
| + extensions::image_util::ParseHexColorString(color_str, &color)); |
| + AccessibilityFocusRingController::GetInstance()->SetFocusRingColor(color); |
| + } else { |
| + AccessibilityFocusRingController::GetInstance()->ResetFocusRingColor(); |
| + } |
| + |
| // Move the visible focus ring to cover all of these rects. |
| AccessibilityFocusRingController::GetInstance()->SetFocusRing( |
| rects, AccessibilityFocusRingController::PERSIST_FOCUS_RING); |