| Index: content/browser/accessibility/browser_accessibility_win.cc
|
| diff --git a/content/browser/accessibility/browser_accessibility_win.cc b/content/browser/accessibility/browser_accessibility_win.cc
|
| index e98ae71498b4dde47494c28b7803ffe67476adbe..58435d15b2bbe8446f96876c898a0be4ffd60e44 100644
|
| --- a/content/browser/accessibility/browser_accessibility_win.cc
|
| +++ b/content/browser/accessibility/browser_accessibility_win.cc
|
| @@ -497,8 +497,8 @@ STDMETHODIMP BrowserAccessibilityWin::get_accParent(IDispatch** disp_parent) {
|
| if (parent_obj == NULL) {
|
| // This happens if we're the root of the tree;
|
| // return the IAccessible for the window.
|
| - parent_obj =
|
| - manager()->ToBrowserAccessibilityManagerWin()->parent_iaccessible();
|
| + if (manager()->delegate())
|
| + parent_obj = manager()->delegate()->GetParentIAccessible();
|
| // |parent| can only be NULL if the manager was created before the parent
|
| // IAccessible was known and it wasn't subsequently set before a client
|
| // requested it. This has been fixed. |parent| may also be NULL during
|
| @@ -738,7 +738,10 @@ STDMETHODIMP BrowserAccessibilityWin::get_windowHandle(HWND* window_handle) {
|
| if (!window_handle)
|
| return E_INVALIDARG;
|
|
|
| - *window_handle = manager()->ToBrowserAccessibilityManagerWin()->parent_hwnd();
|
| + if (!manager()->delegate())
|
| + return E_FAIL;
|
| +
|
| + *window_handle = manager()->delegate()->GetAccessibleParentHWND();
|
| return S_OK;
|
| }
|
|
|
| @@ -990,8 +993,9 @@ STDMETHODIMP BrowserAccessibilityWin::get_imagePosition(
|
| return E_INVALIDARG;
|
|
|
| if (coordinate_type == IA2_COORDTYPE_SCREEN_RELATIVE) {
|
| - HWND parent_hwnd =
|
| - manager()->ToBrowserAccessibilityManagerWin()->parent_hwnd();
|
| + if (!manager()->delegate())
|
| + return E_FAIL;
|
| + HWND parent_hwnd = manager()->delegate()->GetAccessibleParentHWND();
|
| POINT top_left = {0, 0};
|
| ::ClientToScreen(parent_hwnd, &top_left);
|
| *x = GetLocation().x() + top_left.x;
|
|
|