browser_accessibility_state.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CONTENT_PUBLIC_BROWSER_BROWSER_ACCESSIBILITY_STATE_H_
6#define CONTENT_PUBLIC_BROWSER_BROWSER_ACCESSIBILITY_STATE_H_
7
8#include "content/common/content_export.h"
9
10namespace content {
11
12// The BrowserAccessibilityState class is used to determine if the browser
13// should be customized for users with assistive technology, such as screen
14// readers.
15class CONTENT_EXPORT BrowserAccessibilityState {
16 public:
17  virtual ~BrowserAccessibilityState() { }
18
19  // Returns the singleton instance.
20  static BrowserAccessibilityState* GetInstance();
21
22  // Called when accessibility is enabled manually (via command-line flag).
23  virtual void OnAccessibilityEnabledManually() = 0;
24
25  // Called when screen reader client is detected.
26  virtual void OnScreenReaderDetected() = 0;
27
28  // Returns true if the browser should be customized for accessibility.
29  virtual bool IsAccessibleBrowser() = 0;
30};
31
32}  // namespace content
33
34#endif  // CONTENT_PUBLIC_BROWSER_BROWSER_ACCESSIBILITY_STATE_H_
35