Index: content/browser/accessibility/browser_accessibility_state_impl.cc |
diff --git a/content/browser/accessibility/browser_accessibility_state_impl.cc b/content/browser/accessibility/browser_accessibility_state_impl.cc |
index fcd5ba5e8e8408f6efb2c273382f173031b1044f..faf6a7bd412ba3745d4e9a7a84d8965df4ccbb61 100644 |
--- a/content/browser/accessibility/browser_accessibility_state_impl.cc |
+++ b/content/browser/accessibility/browser_accessibility_state_impl.cc |
@@ -21,22 +21,21 @@ namespace content { |
// These values are written to logs. Do not renumber or delete |
// existing items; add new entries to the end of the list. |
enum ModeFlagHistogramValue { |
- UMA_AX_MODE_FLAG_NATIVE_APIS = 0, |
- UMA_AX_MODE_FLAG_WEB_CONTENTS = 1, |
- UMA_AX_MODE_FLAG_INLINE_TEXT_BOXES = 2, |
- UMA_AX_MODE_FLAG_SCREEN_READER = 3, |
- UMA_AX_MODE_FLAG_HTML = 4, |
+ UMA_AX_MODE_NATIVE_APIS = 0, |
+ UMA_AX_MODE_WEB_CONTENTS = 1, |
+ UMA_AX_MODE_INLINE_TEXT_BOXES = 2, |
+ UMA_AX_MODE_SCREEN_READER = 3, |
+ UMA_AX_MODE_HTML = 4, |
// This must always be the last enum. It's okay for its value to |
// increase, but none of the other enum values may change. |
- UMA_AX_MODE_FLAG_MAX |
+ UMA_AX_MODE_MAX |
}; |
// Record a histograms for an accessibility mode when it's enabled. |
void RecordNewAccessibilityModeFlags(ModeFlagHistogramValue mode_flag) { |
- UMA_HISTOGRAM_ENUMERATION("Accessibility.ModeFlag", |
- mode_flag, |
- UMA_AX_MODE_FLAG_MAX); |
+ UMA_HISTOGRAM_ENUMERATION("Accessibility.ModeFlag", mode_flag, |
+ UMA_AX_MODE_MAX); |
} |
// Update the accessibility histogram 45 seconds after initialization. |
@@ -56,7 +55,6 @@ BrowserAccessibilityStateImpl* BrowserAccessibilityStateImpl::GetInstance() { |
BrowserAccessibilityStateImpl::BrowserAccessibilityStateImpl() |
: BrowserAccessibilityState(), |
- accessibility_mode_(AccessibilityModeOff), |
disable_hot_tracking_(false) { |
ResetAccessibilityModeValue(); |
#if defined(OS_WIN) |
@@ -91,7 +89,7 @@ void BrowserAccessibilityStateImpl::OnScreenReaderDetected() { |
} |
void BrowserAccessibilityStateImpl::EnableAccessibility() { |
- AddAccessibilityModeFlags(ACCESSIBILITY_MODE_COMPLETE); |
+ AddAccessibilityModeFlags(kAccessibilityModeComplete); |
} |
void BrowserAccessibilityStateImpl::DisableAccessibility() { |
@@ -99,10 +97,10 @@ void BrowserAccessibilityStateImpl::DisableAccessibility() { |
} |
void BrowserAccessibilityStateImpl::ResetAccessibilityModeValue() { |
- accessibility_mode_ = AccessibilityModeOff; |
+ accessibility_mode_ = AccessibilityMode(); |
if (base::CommandLine::ForCurrentProcess()->HasSwitch( |
switches::kForceRendererAccessibility)) { |
- accessibility_mode_ = ACCESSIBILITY_MODE_COMPLETE; |
+ accessibility_mode_ = kAccessibilityModeComplete; |
} |
} |
@@ -116,8 +114,7 @@ void BrowserAccessibilityStateImpl::ResetAccessibilityMode() { |
} |
bool BrowserAccessibilityStateImpl::IsAccessibleBrowser() { |
- return ((accessibility_mode_ & ACCESSIBILITY_MODE_COMPLETE) == |
- ACCESSIBILITY_MODE_COMPLETE); |
+ return accessibility_mode_ == kAccessibilityModeComplete; |
} |
void BrowserAccessibilityStateImpl::AddHistogramCallback( |
@@ -164,17 +161,17 @@ void BrowserAccessibilityStateImpl::AddAccessibilityModeFlags( |
return; |
// Retrieve only newly added modes for the purposes of logging. |
- AccessibilityMode new_mode_flags = accessibility_mode_ & (~previous_mode); |
- if (new_mode_flags & ACCESSIBILITY_MODE_FLAG_NATIVE_APIS) |
- RecordNewAccessibilityModeFlags(UMA_AX_MODE_FLAG_NATIVE_APIS); |
- if (new_mode_flags & ACCESSIBILITY_MODE_FLAG_WEB_CONTENTS) |
- RecordNewAccessibilityModeFlags(UMA_AX_MODE_FLAG_WEB_CONTENTS); |
- if (new_mode_flags & ACCESSIBILITY_MODE_FLAG_INLINE_TEXT_BOXES) |
- RecordNewAccessibilityModeFlags(UMA_AX_MODE_FLAG_INLINE_TEXT_BOXES); |
- if (new_mode_flags & ACCESSIBILITY_MODE_FLAG_SCREEN_READER) |
- RecordNewAccessibilityModeFlags(UMA_AX_MODE_FLAG_SCREEN_READER); |
- if (new_mode_flags & ACCESSIBILITY_MODE_FLAG_HTML) |
- RecordNewAccessibilityModeFlags(UMA_AX_MODE_FLAG_HTML); |
+ int new_mode_flags = mode.mode() & (~previous_mode.mode()); |
+ if (new_mode_flags & AccessibilityMode::kNativeAPIs) |
+ RecordNewAccessibilityModeFlags(UMA_AX_MODE_NATIVE_APIS); |
+ if (new_mode_flags & AccessibilityMode::kWebContents) |
+ RecordNewAccessibilityModeFlags(UMA_AX_MODE_WEB_CONTENTS); |
+ if (new_mode_flags & AccessibilityMode::kInlineTextBoxes) |
+ RecordNewAccessibilityModeFlags(UMA_AX_MODE_INLINE_TEXT_BOXES); |
+ if (new_mode_flags & AccessibilityMode::kScreenReader) |
+ RecordNewAccessibilityModeFlags(UMA_AX_MODE_SCREEN_READER); |
+ if (new_mode_flags & AccessibilityMode::kHTML) |
+ RecordNewAccessibilityModeFlags(UMA_AX_MODE_HTML); |
std::vector<WebContentsImpl*> web_contents_vector = |
WebContentsImpl::GetAllWebContents(); |
@@ -186,11 +183,14 @@ void BrowserAccessibilityStateImpl::RemoveAccessibilityModeFlags( |
AccessibilityMode mode) { |
if (base::CommandLine::ForCurrentProcess()->HasSwitch( |
switches::kForceRendererAccessibility) && |
- mode == ACCESSIBILITY_MODE_COMPLETE) { |
+ mode == kAccessibilityModeComplete) { |
return; |
} |
- accessibility_mode_ = accessibility_mode_ ^ (mode & accessibility_mode_); |
+ int raw_flags = |
+ accessibility_mode_.mode() ^ (mode.mode() & accessibility_mode_.mode()); |
+ accessibility_mode_ = raw_flags; |
+ |
std::vector<WebContentsImpl*> web_contents_vector = |
WebContentsImpl::GetAllWebContents(); |
for (size_t i = 0; i < web_contents_vector.size(); ++i) |