| Index: chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| diff --git a/chrome/browser/chromeos/accessibility/accessibility_util.cc b/chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| index 0c7fc08627ab661a987930225488b0b5ff7c1968..d595850d83305da30d86e2ccbe10c9e9994237ae 100644
|
| --- a/chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| +++ b/chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| @@ -13,6 +13,7 @@
|
| #include "base/bind.h"
|
| #include "base/bind_helpers.h"
|
| #include "base/logging.h"
|
| +#include "base/metrics/histogram.h"
|
| #include "chrome/browser/accessibility/accessibility_extension_api.h"
|
| #include "chrome/browser/browser_process.h"
|
| #include "chrome/browser/chromeos/accessibility/magnification_manager.h"
|
| @@ -31,6 +32,7 @@
|
| #include "chrome/common/extensions/user_script.h"
|
| #include "chrome/common/pref_names.h"
|
| #include "chrome/common/url_constants.h"
|
| +#include "content/public/browser/browser_accessibility_state.h"
|
| #include "content/public/browser/render_process_host.h"
|
| #include "content/public/browser/render_view_host.h"
|
| #include "content/public/browser/web_contents.h"
|
| @@ -112,6 +114,20 @@ class ContentScriptLoader {
|
| std::queue<ExtensionResource> resources_;
|
| };
|
|
|
| +void UpdateChromeOSAccessibilityHistograms() {
|
| + UMA_HISTOGRAM_BOOLEAN("Accessibility.CrosSpokenFeedback",
|
| + IsSpokenFeedbackEnabled());
|
| + UMA_HISTOGRAM_BOOLEAN("Accessibility.CrosHighContrast",
|
| + IsHighContrastEnabled());
|
| + UMA_HISTOGRAM_BOOLEAN("Accessibility.CrosVirtualKeyboard",
|
| + IsVirtualKeyboardEnabled());
|
| +}
|
| +
|
| +void Initialize() {
|
| + content::BrowserAccessibilityState::GetInstance()->AddHistogramCallback(
|
| + base::Bind(&UpdateChromeOSAccessibilityHistograms));
|
| +}
|
| +
|
| void EnableSpokenFeedback(bool enabled, content::WebUI* login_web_ui) {
|
| bool spoken_feedback_enabled = g_browser_process &&
|
| g_browser_process->local_state()->GetBoolean(
|
| @@ -248,6 +264,16 @@ bool IsHighContrastEnabled() {
|
| return high_contrast_enabled;
|
| }
|
|
|
| +bool IsVirtualKeyboardEnabled() {
|
| + if (!g_browser_process) {
|
| + return false;
|
| + }
|
| + PrefService* prefs = g_browser_process->local_state();
|
| + bool virtual_keyboard_enabled = prefs &&
|
| + prefs->GetBoolean(prefs::kVirtualKeyboardEnabled);
|
| + return virtual_keyboard_enabled;
|
| +}
|
| +
|
| ash::MagnifierType GetMagnifierType() {
|
| if (!MagnificationManager::GetInstance())
|
| return ash::MAGNIFIER_OFF;
|
|
|