From: Connor McAdams cmcadams@codeweavers.com
Signed-off-by: Connor McAdams cmcadams@codeweavers.com --- dlls/uiautomationcore/tests/uiautomation.c | 19 +++++++++++++++++++ dlls/uiautomationcore/uia_provider.c | 4 ++-- 2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/dlls/uiautomationcore/tests/uiautomation.c b/dlls/uiautomationcore/tests/uiautomation.c index 9210583062f..6cb6e56d99b 100644 --- a/dlls/uiautomationcore/tests/uiautomation.c +++ b/dlls/uiautomationcore/tests/uiautomation.c @@ -3836,6 +3836,7 @@ static void test_uia_prov_from_acc_fragment_root(HWND hwnd) IRawElementProviderFragmentRoot *elroot, *elroot2; IRawElementProviderFragment *elfrag, *elfrag2; IRawElementProviderSimple *elprov; + SAFEARRAY *ret_arr; ULONG old_ref; HRESULT hr;
@@ -3852,6 +3853,12 @@ static void test_uia_prov_from_acc_fragment_root(HWND hwnd) ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); ok(!!elfrag, "elfrag == NULL\n");
+ /* GetEmbeddedFragmentRoots test. */ + ret_arr = (void *)0xdeadbeef; + hr = IRawElementProviderFragment_GetEmbeddedFragmentRoots(elfrag, &ret_arr); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + ok(!ret_arr, "ret_arr != NULL\n"); + /* * get_FragmentRoot does the equivalent of calling * AccessibleObjectFromWindow with OBJID_CLIENT on the HWND associated @@ -4161,6 +4168,12 @@ static void test_uia_prov_from_acc_fragment_root(HWND hwnd) ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); ok(!!elfrag, "elfrag == NULL\n");
+ /* GetEmbeddedFragmentRoots test. */ + ret_arr = (void *)0xdeadbeef; + hr = IRawElementProviderFragment_GetEmbeddedFragmentRoots(elfrag, &ret_arr); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + ok(!ret_arr, "ret_arr != NULL\n"); + /* * Simple child element queries HWND as well, does not just return its * parent. @@ -4212,6 +4225,12 @@ static void test_uia_prov_from_acc_fragment_root(HWND hwnd) ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); ok(!!elfrag, "elfrag == NULL\n");
+ /* GetEmbeddedFragmentRoots test. */ + ret_arr = (void *)0xdeadbeef; + hr = IRawElementProviderFragment_GetEmbeddedFragmentRoots(elfrag, &ret_arr); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + ok(!ret_arr, "ret_arr != NULL\n"); + /* * Again, same behavior as simple children. It doesn't just retrieve the * parent IAccessible, it queries the HWND. diff --git a/dlls/uiautomationcore/uia_provider.c b/dlls/uiautomationcore/uia_provider.c index 4ecef2a4752..33bed429ec6 100644 --- a/dlls/uiautomationcore/uia_provider.c +++ b/dlls/uiautomationcore/uia_provider.c @@ -1005,9 +1005,9 @@ static HRESULT WINAPI msaa_fragment_get_BoundingRectangle(IRawElementProviderFra static HRESULT WINAPI msaa_fragment_GetEmbeddedFragmentRoots(IRawElementProviderFragment *iface, SAFEARRAY **ret_val) { - FIXME("%p, %p: stub!\n", iface, ret_val); + TRACE("%p, %p\n", iface, ret_val); *ret_val = NULL; - return E_NOTIMPL; + return S_OK; }
static HRESULT WINAPI msaa_fragment_SetFocus(IRawElementProviderFragment *iface)