From 6b70adc33054f8aee8c54d0f460458a9df11b8a5 Mon Sep 17 00:00:00 2001 From: Russell Brenner Date: Thu, 18 Nov 2010 17:33:13 -0800 Subject: Merge WebKit at r72274: Initial merge by git. Change-Id: Ie51f0b4a16da82942bd516dce59cfb79ebbe25fb --- .../win/AccessibilityUIElementWin.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'WebKitTools/DumpRenderTree/win/AccessibilityUIElementWin.cpp') diff --git a/WebKitTools/DumpRenderTree/win/AccessibilityUIElementWin.cpp b/WebKitTools/DumpRenderTree/win/AccessibilityUIElementWin.cpp index 96937fd..5b771b2 100644 --- a/WebKitTools/DumpRenderTree/win/AccessibilityUIElementWin.cpp +++ b/WebKitTools/DumpRenderTree/win/AccessibilityUIElementWin.cpp @@ -35,6 +35,16 @@ using std::wstring; +static COMPtr comparableObject(IAccessible* accessible) +{ + COMPtr serviceProvider(Query, accessible); + if (!serviceProvider) + return 0; + COMPtr comparable; + serviceProvider->QueryService(SID_AccessibleComparable, __uuidof(IAccessibleComparable), reinterpret_cast(&comparable)); + return comparable; +} + AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element) : m_element(element) { @@ -49,6 +59,18 @@ AccessibilityUIElement::~AccessibilityUIElement() { } +bool AccessibilityUIElement::isEqual(AccessibilityUIElement* otherElement) +{ + COMPtr comparable = comparableObject(m_element.get()); + COMPtr otherComparable = comparableObject(otherElement->m_element.get()); + if (!comparable || !otherComparable) + return false; + BOOL isSame = FALSE; + if (FAILED(comparable->isSameObject(otherComparable.get(), &isSame))) + return false; + return isSame; +} + void AccessibilityUIElement::getLinkedUIElements(Vector&) { } -- cgit v1.1