Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4225)

Unified Diff: chrome/browser/browser_accessibility.h

Issue 115374: Adds propagation and handling of render-side focus events, for the benefit of... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/browser/browser_accessibility.cc » ('j') | webkit/glue/webaccessibilitymanager_impl.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/browser_accessibility.h
===================================================================
--- chrome/browser/browser_accessibility.h (revision 16095)
+++ chrome/browser/browser_accessibility.h (working copy)
@@ -10,7 +10,6 @@
#include <oleacc.h>
-#include "base/basictypes.h"
#include "webkit/glue/webaccessibility.h"
using webkit_glue::WebAccessibility;
@@ -33,9 +32,14 @@
COM_INTERFACE_ENTRY(IAccessible)
END_COM_MAP()
- BrowserAccessibility();
+ BrowserAccessibility() {}
~BrowserAccessibility() {}
+ HRESULT Initialize(int iaccessible_id,
+ int routing_id,
+ int process_id,
+ HWND parent_hwnd);
+
// Supported IAccessible methods.
// Performs the default action on a given object.
@@ -91,7 +95,7 @@
STDMETHODIMP get_accValue(VARIANT var_id, BSTR* value);
// Non-supported (by WebKit) IAccessible methods.
- STDMETHODIMP accSelect(LONG flags_sel, VARIANT var_id);
+ STDMETHODIMP accSelect(LONG flags_sel, VARIANT var_id) { return E_NOTIMPL; }
STDMETHODIMP get_accHelpTopic(BSTR* help_file,
VARIANT var_id,
@@ -100,27 +104,25 @@
STDMETHODIMP get_accSelection(VARIANT* selected);
// Deprecated functions, not implemented here.
- STDMETHODIMP put_accName(VARIANT var_id, BSTR put_name);
- STDMETHODIMP put_accValue(VARIANT var_id, BSTR put_val);
+ STDMETHODIMP put_accName(VARIANT var_id, BSTR put_name) { return E_NOTIMPL; }
+ STDMETHODIMP put_accValue(VARIANT var_id, BSTR put_val) { return E_NOTIMPL; }
- // Modify/retrieve the unique id of this IAccessible instance.
- void set_iaccessible_id(int iaccessible_id) {
- iaccessible_id_ = iaccessible_id;
- }
- int iaccessible_id() const { return iaccessible_id_; }
+ // Accessors/mutators.
+ HWND parent_hwnd() const { return parent_hwnd_;}
- // Modify/retrieve the unique id of this IAccessible's routing variables.
- void set_instance_id(int instance_id) {
- instance_id_ = instance_id;
- }
- int instance_id() const { return instance_id_; }
-
// Modify/retrieve the state (active/inactive) of this instance.
void set_instance_active(bool instance_active) {
instance_active_ = instance_active;
}
int instance_active() const { return instance_active_; }
+ void set_direct_descendant(bool direct_descendant) {
+ direct_descendant_ = direct_descendant;
+ }
+ bool direct_descendant() const { return direct_descendant_; }
+
+ int routing_id() const { return routing_id_; }
+
private:
// Creates an empty VARIANT. Used as the equivalent of a NULL (unused) input
// parameter.
@@ -148,7 +150,6 @@
// Accessors.
const WebAccessibility::OutParams& response();
- HWND parent_hwnd();
// Returns a conversion from the BrowserAccessibilityRole (as defined in
// webkit/glue/webaccessibility.h) to an MSAA role.
@@ -162,11 +163,22 @@
// mapping it to the correct IAccessible on that side. Initialized to -1.
int iaccessible_id_;
- // The unique id of this IAccessible instance. Used to help
+ // The unique ids of this IAccessible instance. Used to help
// BrowserAccessibilityManager instance retrieve the correct member
// variables for this process.
- int instance_id_;
+ int routing_id_;
+ int process_id_;
+ HWND parent_hwnd_;
+
+ // Indicates if an incoming request for child information relates to a child
+ // id of a direct child of the BrowserAccessibility object, or if it refers
+ // to an object elsewhere in the MSAA tree. Set by BrowserAccessibilityManager
+ // and applicable only to the root BrowserAccessibility object (id 0). Needed
+ // to properly handled MSAA focus events, where the child id is the only
+ // parameter in our control.
+ bool direct_descendant_;
+
// The instance should only be active if there is a non-terminated
// RenderProcessHost associated with it. The BrowserAccessibilityManager keeps
// track of this state, and sets it to false to disable all calls into the
« no previous file with comments | « no previous file | chrome/browser/browser_accessibility.cc » ('j') | webkit/glue/webaccessibilitymanager_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698