diff options
author | aboxhall@chromium.org <aboxhall@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-12 23:28:52 +0000 |
---|---|---|
committer | aboxhall@chromium.org <aboxhall@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-12 23:28:52 +0000 |
commit | 1e558fa034727f7de8eac220a48a02e25682aa4d (patch) | |
tree | 661d4a3f060b627587dfa499db015ba758814fa0 /content/browser/accessibility/browser_accessibility_state_impl.h | |
parent | c2e269e232edae45275c5aa39494472301a80d09 (diff) | |
download | chromium_src-1e558fa034727f7de8eac220a48a02e25682aa4d.zip chromium_src-1e558fa034727f7de8eac220a48a02e25682aa4d.tar.gz chromium_src-1e558fa034727f7de8eac220a48a02e25682aa4d.tar.bz2 |
Switch AccessibilityMode to be a bitmap.
This will allow us, in a follow-up CL, to add a new Accessibility mode: AccessibilityModeExtension, which may co-exist with the previously existing modes.
BUG=
Review URL: https://codereview.chromium.org/145283003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250837 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/accessibility/browser_accessibility_state_impl.h')
-rw-r--r-- | content/browser/accessibility/browser_accessibility_state_impl.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/content/browser/accessibility/browser_accessibility_state_impl.h b/content/browser/accessibility/browser_accessibility_state_impl.h index 3098341..2a1b1c6 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_; |