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_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_MAC_H_ 6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_MAC_H_ 7 8 #import <Cocoa/Cocoa.h> 9 10 #include "content/browser/accessibility/browser_accessibility_manager.h" 11 12 namespace content { 13 14 class CONTENT_EXPORT BrowserAccessibilityManagerMac 15 : public BrowserAccessibilityManager { 16 public: 17 BrowserAccessibilityManagerMac( 18 NSView* parent_view, 19 const ui::AXTreeUpdate& initial_tree, 20 BrowserAccessibilityDelegate* delegate, 21 BrowserAccessibilityFactory* factory = new BrowserAccessibilityFactory()); 22 23 static ui::AXTreeUpdate GetEmptyDocument(); 24 25 virtual BrowserAccessibility* GetFocus(BrowserAccessibility* root) OVERRIDE; 26 27 // Implementation of BrowserAccessibilityManager. 28 virtual void NotifyAccessibilityEvent( 29 ui::AXEvent event_type, BrowserAccessibility* node) OVERRIDE; 30 parent_view()31 NSView* parent_view() { return parent_view_; } 32 33 private: 34 virtual void OnNodeCreationFinished(ui::AXNode* node) OVERRIDE; 35 virtual void OnTreeUpdateFinished() OVERRIDE; 36 37 // This gives BrowserAccessibilityManager::Create access to the class 38 // constructor. 39 friend class BrowserAccessibilityManager; 40 41 NSView* parent_view_; 42 43 bool created_live_region_; 44 45 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibilityManagerMac); 46 }; 47 48 } 49 50 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_MAC_H_ 51