From 5fe1572eaaec0f18f8126b9d6d48e7f575e9bcb2 Mon Sep 17 00:00:00 2001 From: "ctguil@chromium.org" Date: Fri, 22 Oct 2010 00:03:22 +0000 Subject: Some cleanup of view accessibility and view accessibility wrapper. 1. Remove the ViewAccessibilityWrapper class. The view can directly manage it's ViewAccessibility. 2. Always use GetAccessibleForView to retrieve a view's associated accessibility object. This ensures that the correct accessibility object is returned for native view host objects. 3. Update get_accFocus to use FocusManager. 4. Move oleacc guid definitions to view_win.cc. BUG=none TEST=interactive_ui_tests:BrowserViewsAccessibilityTest.TestBrowserRootViewAccObj TEST=Manual: I can select the accessibility object of a native view host within AccExplorer32.exe. Review URL: http://codereview.chromium.org/4047001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63451 0039d316-1c4b-4281-b951-d872f2087c98 --- .../browser_views_accessibility_browsertest.cc | 11 +++-------- .../browser/autocomplete/autocomplete_accessibility.cc | 18 +++++++----------- 2 files changed, 10 insertions(+), 19 deletions(-) (limited to 'chrome') diff --git a/chrome/browser/accessibility/browser_views_accessibility_browsertest.cc b/chrome/browser/accessibility/browser_views_accessibility_browsertest.cc index af33e2c..1b5f33b 100644 --- a/chrome/browser/accessibility/browser_views_accessibility_browsertest.cc +++ b/chrome/browser/accessibility/browser_views_accessibility_browsertest.cc @@ -18,7 +18,7 @@ #include "chrome/test/ui_test_utils.h" #include "grit/chromium_strings.h" #include "grit/generated_resources.h" -#include "views/accessibility/view_accessibility_wrapper.h" +#include "views/accessibility/view_accessibility.h" #include "views/widget/root_view.h" #include "views/widget/widget_win.h" #include "views/window/window.h" @@ -83,13 +83,8 @@ class BrowserViewsAccessibilityTest : public InProcessBrowserTest { int32 role) { ASSERT_TRUE(NULL != view); - IAccessible* acc_obj = NULL; - HRESULT hr = view->GetViewAccessibilityWrapper()->GetInstance( - IID_IAccessible, reinterpret_cast(&acc_obj)); - ASSERT_EQ(S_OK, hr); - ASSERT_TRUE(NULL != acc_obj); - - TestAccessibilityInfo(acc_obj, name, role); + TestAccessibilityInfo( + ViewAccessibility::GetAccessibleForView(view), name, role); } diff --git a/chrome/browser/autocomplete/autocomplete_accessibility.cc b/chrome/browser/autocomplete/autocomplete_accessibility.cc index 1344e4f..0f622d7 100644 --- a/chrome/browser/autocomplete/autocomplete_accessibility.cc +++ b/chrome/browser/autocomplete/autocomplete_accessibility.cc @@ -8,7 +8,7 @@ #include "chrome/browser/autocomplete/autocomplete_edit.h" #include "chrome/browser/autocomplete/autocomplete_edit_view_win.h" #include "grit/generated_resources.h" -#include "views/accessibility/view_accessibility_wrapper.h" +#include "views/accessibility/view_accessibility.h" #include "views/view.h" HRESULT AutocompleteAccessibility::Initialize( @@ -58,16 +58,12 @@ STDMETHODIMP AutocompleteAccessibility::get_accParent(IDispatch** disp_parent) { return S_FALSE; } - // Retrieve the IUnknown interface for the parent view, and assign the - // IDispatch returned. - if (edit_box_->parent_view()->GetViewAccessibilityWrapper()->GetInstance( - IID_IAccessible, reinterpret_cast(disp_parent)) == S_OK) { - // Increment the reference count for the retrieved interface. - (*disp_parent)->AddRef(); - return S_OK; - } else { - return E_NOINTERFACE; - } + // Retrieve the IDispatch interface for the parent view. + *disp_parent = + ViewAccessibility::GetAccessibleForView(edit_box_->parent_view()); + // Increment the reference count for the retrieved interface. + (*disp_parent)->AddRef(); + return S_OK; } STDMETHODIMP AutocompleteAccessibility::accNavigate(LONG nav_dir, VARIANT start, -- cgit v1.1