summaryrefslogtreecommitdiff
path: root/winaccessibility
diff options
context:
space:
mode:
Diffstat (limited to 'winaccessibility')
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.cxx16
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.h6
-rw-r--r--winaccessibility/source/UAccCOMIDL/UAccCOM.idl2
3 files changed, 23 insertions, 1 deletions
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index cdc90cfb82bd..549fee11a92f 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -2676,4 +2676,20 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *p
} catch(...) { return E_FAIL; }
}
+// IAccessible2_2 methods
+COM_DECLSPEC_NOTHROW STDMETHODIMP CMAccessible::get_attribute(BSTR, VARIANT*)
+{
+ return E_NOTIMPL;
+}
+
+COM_DECLSPEC_NOTHROW STDMETHODIMP CMAccessible::get_accessibleWithCaret(IUnknown**, long*)
+{
+ return E_NOTIMPL;
+}
+
+COM_DECLSPEC_NOTHROW STDMETHODIMP CMAccessible::get_relationTargetsOfType(BSTR, long, IUnknown***, long*)
+{
+ return E_NOTIMPL;
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/winaccessibility/source/UAccCOM/MAccessible.h b/winaccessibility/source/UAccCOM/MAccessible.h
index b17a8d78b7d9..7bd2153bf344 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.h
+++ b/winaccessibility/source/UAccCOM/MAccessible.h
@@ -64,6 +64,7 @@ public:
COM_INTERFACE_ENTRY(IMAccessible)
COM_INTERFACE_ENTRY(IAccessible)
COM_INTERFACE_ENTRY(IAccessible2)
+ COM_INTERFACE_ENTRY(IAccessible2_2)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(IAccessibleApplication)
COM_INTERFACE_ENTRY(IServiceProvider)
@@ -121,6 +122,11 @@ public:
STDMETHOD(get_locale)( IA2Locale __RPC_FAR *locale ) override;
STDMETHOD(get_attributes)(/*[out]*/ BSTR *pAttr) override;
+ // IAccessible2_2 methods
+ STDMETHOD(get_attribute)(BSTR name, VARIANT* attribute) override;
+ STDMETHOD(get_accessibleWithCaret)(IUnknown** accessible, long* caretOffset) override;
+ STDMETHOD(get_relationTargetsOfType)(BSTR type, long maxTargets, IUnknown*** targets, long* nTargets) override;
+
//IServiceProvider.
STDMETHOD(QueryService)(REFGUID guidService, REFIID riid, void** ppvObject) override;
diff --git a/winaccessibility/source/UAccCOMIDL/UAccCOM.idl b/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
index 8c63a5a3bfdf..f006146fd58f 100644
--- a/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
+++ b/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
@@ -30,7 +30,7 @@ import "defines.idl";
helpstring("IMAccessible Interface"),
pointer_default(unique)
]
- interface IMAccessible : IAccessible2
+ interface IMAccessible : IAccessible2_2
{
[id(2), helpstring("method Put_XAccRole")] HRESULT Put_XAccRole(unsigned short pRole);
[id(3), helpstring("method DecreaseState")] HRESULT DecreaseState(DWORD pXSate);