OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_H_ | 5 #ifndef CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_H_ |
6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_H_ | 6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <map> | 9 #include <map> |
10 #include <utility> | 10 #include <utility> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "base/basictypes.h" | 13 #include "base/basictypes.h" |
14 #include "build/build_config.h" | 14 #include "build/build_config.h" |
| 15 #include "content/common/content_export.h" |
15 #include "webkit/glue/webaccessibility.h" | 16 #include "webkit/glue/webaccessibility.h" |
16 | 17 |
17 class BrowserAccessibilityManager; | 18 class BrowserAccessibilityManager; |
18 #if defined(OS_MACOSX) && __OBJC__ | 19 #if defined(OS_MACOSX) && __OBJC__ |
19 @class BrowserAccessibilityCocoa; | 20 @class BrowserAccessibilityCocoa; |
20 #elif defined(OS_WIN) | 21 #elif defined(OS_WIN) |
21 class BrowserAccessibilityWin; | 22 class BrowserAccessibilityWin; |
22 #endif | 23 #endif |
23 | 24 |
24 using webkit_glue::WebAccessibility; | 25 using webkit_glue::WebAccessibility; |
25 typedef std::map<WebAccessibility::BoolAttribute, bool> BoolAttrMap; | 26 typedef std::map<WebAccessibility::BoolAttribute, bool> BoolAttrMap; |
26 typedef std::map<WebAccessibility::FloatAttribute, float> FloatAttrMap; | 27 typedef std::map<WebAccessibility::FloatAttribute, float> FloatAttrMap; |
27 typedef std::map<WebAccessibility::IntAttribute, int> IntAttrMap; | 28 typedef std::map<WebAccessibility::IntAttribute, int> IntAttrMap; |
28 typedef std::map<WebAccessibility::StringAttribute, string16> StringAttrMap; | 29 typedef std::map<WebAccessibility::StringAttribute, string16> StringAttrMap; |
29 | 30 |
30 //////////////////////////////////////////////////////////////////////////////// | 31 //////////////////////////////////////////////////////////////////////////////// |
31 // | 32 // |
32 // BrowserAccessibility | 33 // BrowserAccessibility |
33 // | 34 // |
34 // Class implementing the cross platform interface for the Browser-Renderer | 35 // Class implementing the cross platform interface for the Browser-Renderer |
35 // communication of accessibility information, providing accessibility | 36 // communication of accessibility information, providing accessibility |
36 // to be used by screen readers and other assistive technology (AT). | 37 // to be used by screen readers and other assistive technology (AT). |
37 // | 38 // |
38 // An implementation for each platform handles platform specific accessibility | 39 // An implementation for each platform handles platform specific accessibility |
39 // APIs. | 40 // APIs. |
40 // | 41 // |
41 //////////////////////////////////////////////////////////////////////////////// | 42 //////////////////////////////////////////////////////////////////////////////// |
42 class BrowserAccessibility { | 43 class CONTENT_EXPORT BrowserAccessibility { |
43 public: | 44 public: |
44 // Creates a platform specific BrowserAccessibility. Ownership passes to the | 45 // Creates a platform specific BrowserAccessibility. Ownership passes to the |
45 // caller. | 46 // caller. |
46 static BrowserAccessibility* Create(); | 47 static BrowserAccessibility* Create(); |
47 | 48 |
48 virtual ~BrowserAccessibility(); | 49 virtual ~BrowserAccessibility(); |
49 | 50 |
50 // Detach all descendants of this subtree and push all of the node pointers, | 51 // Detach all descendants of this subtree and push all of the node pointers, |
51 // including this node, onto the end of |nodes|. | 52 // including this node, onto the end of |nodes|. |
52 virtual void DetachTree(std::vector<BrowserAccessibility*>* nodes); | 53 virtual void DetachTree(std::vector<BrowserAccessibility*>* nodes); |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
266 // tree, a client may still be holding onto a pointer to this object, so | 267 // tree, a client may still be holding onto a pointer to this object, so |
267 // we mark it as inactive so that calls to any of this object's methods | 268 // we mark it as inactive so that calls to any of this object's methods |
268 // immediately return failure. | 269 // immediately return failure. |
269 bool instance_active_; | 270 bool instance_active_; |
270 | 271 |
271 private: | 272 private: |
272 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibility); | 273 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibility); |
273 }; | 274 }; |
274 | 275 |
275 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_H_ | 276 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_H_ |
OLD | NEW |