Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(67)

Unified Diff: content/browser/accessibility/browser_accessibility_state_impl.h

Issue 145283003: Switch AccessibilityMode to be a bitmap (Closed) Base URL: https://chromium.googlesource.com/chromium/src@enable
Patch Set: Switch back to AccessibilityMode enums in accessibility_ui.cc Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/accessibility/browser_accessibility_state_impl.h
diff --git a/content/browser/accessibility/browser_accessibility_state_impl.h b/content/browser/accessibility/browser_accessibility_state_impl.h
index 3098341ef25efeb46fef8762a7e1d3512e5fad86..2a1b1c6bb4bee7e24fc44061f8a267df5de7f3cb 100644
--- a/content/browser/accessibility/browser_accessibility_state_impl.h
+++ b/content/browser/accessibility/browser_accessibility_state_impl.h
@@ -42,6 +42,7 @@ class CONTENT_EXPORT BrowserAccessibilityStateImpl
virtual void EnableAccessibility() OVERRIDE;
virtual void DisableAccessibility() OVERRIDE;
+ virtual void ResetAccessibilityMode() OVERRIDE;
virtual void OnScreenReaderDetected() OVERRIDE;
virtual bool IsAccessibleBrowser() OVERRIDE;
virtual void AddHistogramCallback(base::Closure callback) OVERRIDE;
@@ -49,12 +50,23 @@ class CONTENT_EXPORT BrowserAccessibilityStateImpl
virtual void UpdateHistogramsForTesting() OVERRIDE;
AccessibilityMode accessibility_mode() const { return accessibility_mode_; };
- void SetAccessibilityMode(AccessibilityMode mode);
+
+ // Adds the given accessibility mode to the current accessibility mode bitmap.
+ void AddAccessibilityMode(AccessibilityMode mode);
+
+ // Removes the given accessibility mode from the current accessibility mode
+ // bitmap, managing the bits that are shared with other modes such that a
+ // bit will only be turned off when all modes that depend on it have been
+ // removed.
+ void RemoveAccessibilityMode(AccessibilityMode mode);
private:
friend class base::RefCountedThreadSafe<BrowserAccessibilityStateImpl>;
friend struct DefaultSingletonTraits<BrowserAccessibilityStateImpl>;
+ // Resets accessibility_mode_ to the default value.
+ void ResetAccessibilityModeValue();
+
// Called a short while after startup to allow time for the accessibility
// state to be determined. Updates histograms with the current state.
void UpdateHistograms();
@@ -64,6 +76,10 @@ class CONTENT_EXPORT BrowserAccessibilityStateImpl
void UpdatePlatformSpecificHistograms();
+ // Updates the accessibility mode of all render widgets, including swapped out
+ // ones. |add| specifies whether the mode should be added or removed.
+ void AddOrRemoveFromRenderWidgets(AccessibilityMode mode, bool add);
+
AccessibilityMode accessibility_mode_;
std::vector<base::Closure> histogram_callbacks_;
« no previous file with comments | « content/browser/accessibility/accessibility_ui.cc ('k') | content/browser/accessibility/browser_accessibility_state_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698