diff options
author | klink@chromium.org <klink@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-20 20:12:25 +0000 |
---|---|---|
committer | klink@chromium.org <klink@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-20 20:12:25 +0000 |
commit | 6a983b4e4d28c1e3841f39febeb6a9dd681b53b3 (patch) | |
tree | a4b5d6a01066c026338d071076db9ff7dae210f3 /webkit/glue/webaccessibilitymanager.h | |
parent | fe5a8a4ff6f5758f8dbf7e6e9578df97fb8633db (diff) | |
download | chromium_src-6a983b4e4d28c1e3841f39febeb6a9dd681b53b3.zip chromium_src-6a983b4e4d28c1e3841f39febeb6a9dd681b53b3.tar.gz chromium_src-6a983b4e4d28c1e3841f39febeb6a9dd681b53b3.tar.bz2 |
Removes all use of COM and dependencies on Windows-specific classes (including the use of AccessibleBase and AccessibleDocument) in the glue accessibility implementation.Introduces the GlueAccessibilityObject, which serves as a platform-independent wrapper directly around WebKit's AccessibilityObject (also platoform-independent).Updates naming/comments to reflect the independence of IAccessible both in glue and (where appropriate) in the browser-side accessibility.
Review URL: http://codereview.chromium.org/46013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12207 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/webaccessibilitymanager.h')
-rw-r--r-- | webkit/glue/webaccessibilitymanager.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/webkit/glue/webaccessibilitymanager.h b/webkit/glue/webaccessibilitymanager.h new file mode 100644 index 0000000..cebe94c --- /dev/null +++ b/webkit/glue/webaccessibilitymanager.h @@ -0,0 +1,54 @@ +// Copyright (c) 2006-2008 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 WEBKIT_GLUE_WEBACCESSIBILITYMANAGER_H_ +#define WEBKIT_GLUE_WEBACCESSIBILITYMANAGER_H_ + +#include "webkit/glue/webaccessibility.h" + +class WebView; + +//////////////////////////////////////////////////////////////////////////////// +// +// WebAccessibilityManager +// +// Responds to incoming accessibility requests from the browser side. Retrieves +// the requested information from the active AccessibilityObject, through the +// GlueAccessibilityObject. +//////////////////////////////////////////////////////////////////////////////// +namespace webkit_glue { + +class WebAccessibilityManager { + public: + WebAccessibilityManager() {} + virtual ~WebAccessibilityManager() {} + + static WebAccessibilityManager* Create(); + + // Retrieves the accessibility information as requested in in_params, by + // calling into WebKit's AccessibilityObject. Maintains a hashmap of the + // currently active (browser side ref-count non-zero) instances. Returns true + // if successful, false otherwise. + virtual bool GetAccObjInfo(WebView* view, + const WebAccessibility::InParams& in_params, + WebAccessibility::OutParams* out_params) = 0; + + // Erases the entry identified by the [acc_obj_id] from the hash maps. If + // [clear_all] is true, all entries are erased. Returns true if successful, + // false otherwise. + virtual bool ClearAccObjMap(int acc_obj_id, bool clear_all) = 0; + + // Retrieves the RenderObject associated with this WebView, and uses it to + // initialize the root of the GlueAccessibilityObject tree with the + // associated accessibility information. Returns true if successful, false + // otherwise. + virtual bool InitAccObjRoot(WebView* view) = 0; + + private: + DISALLOW_COPY_AND_ASSIGN(WebAccessibilityManager); +}; + +} // namespace webkit_glue + +#endif // WEBKIT_GLUE_WEBACCESSIBILITYMANAGER_H_ |