OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 UI_ACCESSIBILITY_AX_PLATFORM_NODE_MAC_H_ | 5 #ifndef UI_ACCESSIBILITY_AX_PLATFORM_NODE_MAC_H_ |
6 #define UI_ACCESSIBILITY_AX_PLATFORM_NODE_MAC_H_ | 6 #define UI_ACCESSIBILITY_AX_PLATFORM_NODE_MAC_H_ |
7 | 7 |
8 #include "base/mac/scoped_nsobject.h" | 8 #include "base/mac/scoped_nsobject.h" |
9 #include "ui/accessibility/ax_export.h" | 9 #include "ui/accessibility/ax_export.h" |
10 #include "ui/accessibility/platform/ax_platform_node_base.h" | 10 #include "ui/accessibility/platform/ax_platform_node_base.h" |
11 | 11 |
12 @class AXPlatformNodeCocoa; | 12 @class AXPlatformNodeCocoa; |
13 | 13 |
14 namespace ui { | 14 namespace ui { |
15 | 15 |
16 class AXPlatformNodeMac : public AXPlatformNodeBase { | 16 class AXPlatformNodeMac : public AXPlatformNodeBase { |
17 public: | 17 public: |
18 AXPlatformNodeMac(); | 18 AXPlatformNodeMac(); |
19 | 19 |
20 // AXPlatformNode. | 20 // AXPlatformNode. |
21 void Destroy() override; | 21 void Destroy() override; |
22 gfx::NativeViewAccessible GetNativeViewAccessible() override; | 22 gfx::NativeViewAccessible GetNativeViewAccessible() override; |
| 23 void NotifyAccessibilityEvent(ui::AXEvent event_type) override; |
| 24 |
| 25 // AXPlatformNodeBase. |
| 26 int GetIndexInParent() override; |
23 | 27 |
24 private: | 28 private: |
25 ~AXPlatformNodeMac() override; | 29 ~AXPlatformNodeMac() override; |
26 | 30 |
27 base::scoped_nsobject<AXPlatformNodeCocoa> native_node_; | 31 base::scoped_nsobject<AXPlatformNodeCocoa> native_node_; |
28 | 32 |
29 DISALLOW_COPY_AND_ASSIGN(AXPlatformNodeMac); | 33 DISALLOW_COPY_AND_ASSIGN(AXPlatformNodeMac); |
30 }; | 34 }; |
31 | 35 |
32 } // namespace ui | 36 } // namespace ui |
33 | 37 |
34 AX_EXPORT | 38 AX_EXPORT |
35 @interface AXPlatformNodeCocoa : NSObject { | 39 @interface AXPlatformNodeCocoa : NSObject { |
36 @private | 40 @private |
37 ui::AXPlatformNodeBase* node_; // Weak. Retains us. | 41 ui::AXPlatformNodeBase* node_; // Weak. Retains us. |
38 } | 42 } |
39 | 43 |
40 + (NSString*)nativeRoleFromAXRole:(ui::AXRole)role; | 44 + (NSString*)nativeRoleFromAXRole:(ui::AXRole)role; |
41 + (NSString*)nativeSubroleFromAXRole:(ui::AXRole)role; | 45 + (NSString*)nativeSubroleFromAXRole:(ui::AXRole)role; |
42 | 46 |
43 - (instancetype)initWithNode:(ui::AXPlatformNodeBase*)node; | 47 - (instancetype)initWithNode:(ui::AXPlatformNodeBase*)node; |
44 - (void)detach; | 48 - (void)detach; |
45 | 49 |
46 @property(nonatomic, readonly) NSRect boundsInScreen; | 50 @property(nonatomic, readonly) NSRect boundsInScreen; |
47 | 51 |
48 @end | 52 @end |
49 | 53 |
50 #endif // UI_ACCESSIBILITY_AX_PLATFORM_NODE_MAC_H_ | 54 #endif // UI_ACCESSIBILITY_AX_PLATFORM_NODE_MAC_H_ |
OLD | NEW |