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

Unified Diff: content/browser/accessibility/browser_accessibility_win.h

Issue 9958139: Add support for UIA accessibility interfaces like IAccessibleEx and IRawElementProviderSimple. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 9 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
Index: content/browser/accessibility/browser_accessibility_win.h
===================================================================
--- content/browser/accessibility/browser_accessibility_win.h (revision 130412)
+++ content/browser/accessibility/browser_accessibility_win.h (working copy)
@@ -10,6 +10,7 @@
#include <atlcom.h>
#include <oleacc.h>
+#include <UIAutomationCore.h>
dmazzoni 2012/04/04 06:02:00 Nit: Group this with the other Windows includes, a
ananta 2012/04/04 19:23:00 Done.
#include <vector>
#include "content/browser/accessibility/browser_accessibility.h"
@@ -54,7 +55,9 @@
public IServiceProvider,
public ISimpleDOMDocument,
public ISimpleDOMNode,
- public ISimpleDOMText {
+ public ISimpleDOMText,
+ public IAccessibleEx,
+ public IRawElementProviderSimple {
public:
BEGIN_COM_MAP(BrowserAccessibilityWin)
COM_INTERFACE_ENTRY2(IDispatch, IAccessible2)
@@ -72,6 +75,8 @@
COM_INTERFACE_ENTRY(ISimpleDOMDocument)
COM_INTERFACE_ENTRY(ISimpleDOMNode)
COM_INTERFACE_ENTRY(ISimpleDOMText)
+ COM_INTERFACE_ENTRY(IAccessibleEx)
+ COM_INTERFACE_ENTRY(IRawElementProviderSimple)
END_COM_MAP()
// Represents a non-static text node in IAccessibleHypertext. This character
@@ -92,7 +97,7 @@
// BrowserAccessibility methods.
//
CONTENT_EXPORT virtual void PreInitialize();
-CONTENT_EXPORT virtual void PostInitialize();
+ CONTENT_EXPORT virtual void PostInitialize();
CONTENT_EXPORT virtual void NativeAddReference();
CONTENT_EXPORT virtual void NativeReleaseReference();
@@ -692,6 +697,44 @@
CONTENT_EXPORT STDMETHODIMP QueryService(REFGUID guidService, REFIID riid,
void** object);
+ // IAccessibleEx methods not implemented.
dmazzoni 2012/04/04 06:02:00 Nit: Use a large comment block to be consistent:
ananta 2012/04/04 19:23:00 Done.
+ CONTENT_EXPORT STDMETHODIMP GetObjectForChild(long child_id,
+ IAccessibleEx** ret) {
+ return E_NOTIMPL;
+ }
+
+ CONTENT_EXPORT STDMETHODIMP GetIAccessiblePair(IAccessible** acc,
+ long* child_id) {
+ return E_NOTIMPL;
+ }
+
+ CONTENT_EXPORT STDMETHODIMP GetRuntimeId(SAFEARRAY** runtime_id) {
+ return E_NOTIMPL;
+ }
+
+ CONTENT_EXPORT STDMETHODIMP ConvertReturnedElement(
+ IRawElementProviderSimple* element,
+ IAccessibleEx** acc) {
+ return E_NOTIMPL;
+ }
+
+ // IRawElementProviderSimple methods.
dmazzoni 2012/04/04 06:02:00 Same
ananta 2012/04/04 19:23:00 Done.
+ // The GetPatternProvider/GetPropertyValue methods need to be implemented for
+ // the on screen keyboard to show up in Windows 8 metro.
dmazzoni 2012/04/04 06:02:00 Nit: on screen -> on-screen.
ananta 2012/04/04 19:23:00 Done.
+ CONTENT_EXPORT STDMETHOD(GetPatternProvider)(PATTERNID id,
+ IUnknown** provider);
+ CONTENT_EXPORT STDMETHOD(GetPropertyValue)(PROPERTYID id, VARIANT* ret);
dmazzoni 2012/04/04 06:02:00 Does it work if you use STDMETHODIMP GetPropertyVa
ananta 2012/04/04 19:23:00 Done.
+
+ // IRawElementProviderSimple methods not implemented.
+ CONTENT_EXPORT STDMETHOD(get_ProviderOptions)(enum ProviderOptions* ret) {
+ return E_NOTIMPL;
+ }
+
+ CONTENT_EXPORT STDMETHOD(get_HostRawElementProvider)(
+ IRawElementProviderSimple** provider) {
+ return E_NOTIMPL;
+ }
+
//
// CComObjectRootEx methods.
//

Powered by Google App Engine
This is Rietveld 408576698