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 2509ebd11a7817c2d3df61e1829d77b50a421959..63a634bedaef6e7c4058368404610171b87e3a4c 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" |
@@ -30,6 +31,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" |
@@ -111,6 +113,23 @@ 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()); |
+ UMA_HISTOGRAM_ENUMERATION("Accessibility.CrosScreenMagnifier", |
+ GetMagnifierType(), |
davidjames
2012/12/01 18:44:57
It looks like this call to GetMagnifierType() is i
|
+ 3); |
+} |
+ |
+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( |
@@ -247,6 +266,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; |