Bug 1406822: Implement a11y::HandlerProvider::GetEffectiveOutParamIid; r=Jamie

MozReview-Commit-ID: BKH3ooMQvN1

--HG--
extra : rebase_source : 50b666c3366e4f354b61ec2c3a37bf7f83c5f362
This commit is contained in:
Aaron Klotz 2017-10-17 15:01:27 -06:00
Родитель 8f79c15fdb
Коммит 743c2cb58b
2 изменённых файлов: 17 добавлений и 1 удалений

Просмотреть файл

@ -9,6 +9,8 @@
#include "mozilla/a11y/HandlerProvider.h"
#include "Accessible2_3.h"
#include "AccessibleTable.h"
#include "AccessibleTable2.h"
#include "HandlerData.h"
#include "HandlerData_i.c"
#include "mozilla/Assertions.h"
@ -214,6 +216,18 @@ HandlerProvider::MarshalAs(REFIID aIid)
return aIid;
}
REFIID
HandlerProvider::GetEffectiveOutParamIid(REFIID aCallIid,
ULONG aCallMethod)
{
if (aCallIid == IID_IAccessibleTable || aCallIid == IID_IAccessibleTable2) {
return IID_IAccessible2_3;
}
MOZ_ASSERT(false);
return IID_IUnknown;
}
HRESULT
HandlerProvider::NewInstance(REFIID aIid,
mscom::InterceptorTargetPtr<IUnknown> aTarget,

Просмотреть файл

@ -7,7 +7,7 @@
#ifndef mozilla_a11y_HandlerProvider_h
#define mozilla_a11y_HandlerProvider_h
#include "handler/AccessibleHandler.h"
#include "mozilla/a11y/AccessibleHandler.h"
#include "mozilla/AlreadyAddRefed.h"
#include "mozilla/Atomics.h"
#include "mozilla/mscom/IHandlerProvider.h"
@ -44,6 +44,8 @@ public:
STDMETHODIMP GetHandlerPayloadSize(NotNull<DWORD*> aOutPayloadSize) override;
STDMETHODIMP WriteHandlerPayload(NotNull<IStream*> aStream) override;
STDMETHODIMP_(REFIID) MarshalAs(REFIID aIid) override;
STDMETHODIMP_(REFIID) GetEffectiveOutParamIid(REFIID aCallIid,
ULONG aCallMethod) override;
STDMETHODIMP NewInstance(REFIID aIid,
mscom::InterceptorTargetPtr<IUnknown> aTarget,
NotNull<mscom::IHandlerProvider**> aOutNewPayload) override;