| // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_ |
| #define CHROME_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_ |
| #pragma once |
| |
| #include <oleacc.h> |
| |
| #include "base/win/scoped_comptr.h" |
| #include "chrome/browser/accessibility/browser_accessibility_manager.h" |
| #include "webkit/glue/webaccessibility.h" |
| |
| class BrowserAccessibilityWin; |
| struct ViewHostMsg_AccessibilityNotification_Params; |
| |
| using webkit_glue::WebAccessibility; |
| |
| // Manages a tree of BrowserAccessibilityWin objects. |
| class BrowserAccessibilityManagerWin : public BrowserAccessibilityManager { |
| public: |
| virtual ~BrowserAccessibilityManagerWin(); |
| |
| // Get a the default IAccessible for the parent window, does not make a |
| // new reference. |
| IAccessible* GetParentWindowIAccessible(); |
| |
| // BrowserAccessibilityManager methods |
| virtual void NotifyAccessibilityEvent(int type, BrowserAccessibility* node); |
| |
| private: |
| BrowserAccessibilityManagerWin( |
| HWND parent_window, |
| const WebAccessibility& src, |
| BrowserAccessibilityDelegate* delegate, |
| BrowserAccessibilityFactory* factory); |
| |
| // A default IAccessible instance for the parent window. |
| base::win::ScopedComPtr<IAccessible> window_iaccessible_; |
| |
| // Give BrowserAccessibilityManager::Create access to our constructor. |
| friend class BrowserAccessibilityManager; |
| |
| DISALLOW_COPY_AND_ASSIGN(BrowserAccessibilityManagerWin); |
| }; |
| |
| #endif // CHROME_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_ |