summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorctguil@chromium.org <ctguil@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-18 22:40:09 +0000
committerctguil@chromium.org <ctguil@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-18 22:40:09 +0000
commit7ab0213e26b0272ff5c4984e9dbf60cdd7654938 (patch)
tree2b5624e976989d8ce68b9bfd401c51b693edde43
parentff97180e9844dcb229ddde6c9af40d4f481b8959 (diff)
downloadchromium_src-7ab0213e26b0272ff5c4984e9dbf60cdd7654938.zip
chromium_src-7ab0213e26b0272ff5c4984e9dbf60cdd7654938.tar.gz
chromium_src-7ab0213e26b0272ff5c4984e9dbf60cdd7654938.tar.bz2
[Accessibility] Chrome's main window is missing an accessible name
BUG=36732 TEST=Verify Chrome's main window has a name in AccExplorer or run the new test. Review URL: http://codereview.chromium.org/661054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42018 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/views/browser_views_accessibility_browsertest.cc18
-rw-r--r--chrome/browser/views/frame/browser_view.cc4
2 files changed, 19 insertions, 3 deletions
diff --git a/chrome/browser/views/browser_views_accessibility_browsertest.cc b/chrome/browser/views/browser_views_accessibility_browsertest.cc
index ea7fde0..ac20277 100644
--- a/chrome/browser/views/browser_views_accessibility_browsertest.cc
+++ b/chrome/browser/views/browser_views_accessibility_browsertest.cc
@@ -17,6 +17,7 @@
#include "views/accessibility/view_accessibility_wrapper.h"
#include "views/widget/root_view.h"
#include "views/widget/widget_win.h"
+#include "views/window/window.h"
namespace {
@@ -85,7 +86,7 @@ class BrowserViewsAccessibilityTest : public InProcessBrowserTest {
// Retrieves and verifies the accessibility object for the given View.
void TestViewAccessibilityObject(views::View* view, std::wstring name,
- long role) {
+ int32 role) {
ASSERT_TRUE(NULL != view);
IAccessible* acc_obj = NULL;
@@ -97,9 +98,10 @@ class BrowserViewsAccessibilityTest : public InProcessBrowserTest {
TestAccessibilityInfo(acc_obj, name, role);
}
+
// Verifies MSAA Name and Role properties of the given IAccessible.
void TestAccessibilityInfo(IAccessible* acc_obj, std::wstring name,
- long role) {
+ int32 role) {
// Verify MSAA Name property.
BSTR acc_name;
@@ -142,6 +144,17 @@ IN_PROC_BROWSER_TEST_F(BrowserViewsAccessibilityTest, TestChromeWindowAccObj) {
acc_obj->Release();
}
+// Retrieve accessibility object for non client view and verify accessibility
+// info.
+IN_PROC_BROWSER_TEST_F(BrowserViewsAccessibilityTest, TestNonClientViewAccObj) {
+ views::View* non_client_view =
+ GetBrowserView()->GetWindow()->GetNonClientView();
+
+ TestViewAccessibilityObject(non_client_view,
+ l10n_util::GetString(IDS_PRODUCT_NAME),
+ ROLE_SYSTEM_WINDOW);
+}
+
// Retrieve accessibility object for browser root view and verify
// accessibility info.
IN_PROC_BROWSER_TEST_F(BrowserViewsAccessibilityTest,
@@ -254,6 +267,5 @@ IN_PROC_BROWSER_TEST_F(BrowserViewsAccessibilityTest,
l10n_util::GetString(IDS_ACCNAME_BOOKMARKS),
ROLE_SYSTEM_TOOLBAR);
}
-
} // Namespace.
diff --git a/chrome/browser/views/frame/browser_view.cc b/chrome/browser/views/frame/browser_view.cc
index 7a6c20b..3312812 100644
--- a/chrome/browser/views/frame/browser_view.cc
+++ b/chrome/browser/views/frame/browser_view.cc
@@ -2162,6 +2162,10 @@ BrowserWindow* BrowserWindow::CreateBrowserWindow(Browser* browser) {
// so we don't need to do anything with the pointer.
BrowserView* view = new BrowserView(browser);
BrowserFrame::Create(view, browser->profile());
+
+ view->GetWindow()->GetNonClientView()->
+ SetAccessibleName(l10n_util::GetString(IDS_PRODUCT_NAME));
+
return view;
}
#endif