summaryrefslogtreecommitdiffstats
path: root/views/controls/tabbed_pane/tabbed_pane.cc
diff options
context:
space:
mode:
authordmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-03 23:13:49 +0000
committerdmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-03 23:13:49 +0000
commitc45dde3c15cddbca7795cab1c28fa472148b01b1 (patch)
tree74f32f6537b87946703839e7e2dfde2f2a2f9063 /views/controls/tabbed_pane/tabbed_pane.cc
parent7c8f18ab4383e497f0ba3663156abf81ea5af3e6 (diff)
downloadchromium_src-c45dde3c15cddbca7795cab1c28fa472148b01b1.zip
chromium_src-c45dde3c15cddbca7795cab1c28fa472148b01b1.tar.gz
chromium_src-c45dde3c15cddbca7795cab1c28fa472148b01b1.tar.bz2
Refactor Views accessibility.
BUG=none TEST=none Review URL: http://codereview.chromium.org/6581010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76825 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/controls/tabbed_pane/tabbed_pane.cc')
-rw-r--r--views/controls/tabbed_pane/tabbed_pane.cc18
1 files changed, 13 insertions, 5 deletions
diff --git a/views/controls/tabbed_pane/tabbed_pane.cc b/views/controls/tabbed_pane/tabbed_pane.cc
index eb9f971..1091407 100644
--- a/views/controls/tabbed_pane/tabbed_pane.cc
+++ b/views/controls/tabbed_pane/tabbed_pane.cc
@@ -5,11 +5,13 @@
#include "views/controls/tabbed_pane/tabbed_pane.h"
#include "base/logging.h"
+#include "ui/base/accessibility/accessible_view_state.h"
// TODO(avi): remove when not needed
#include "base/utf_string_conversions.h"
#include "ui/base/keycodes/keyboard_codes.h"
#include "views/controls/native/native_view_host.h"
#include "views/controls/tabbed_pane/native_tabbed_pane_wrapper.h"
+#include "views/widget/widget.h"
namespace views {
@@ -38,7 +40,6 @@ void TabbedPane::AddTabAtIndex(int index,
bool select_if_first_tab) {
native_tabbed_pane_->AddTabAtIndex(index, title, contents,
select_if_first_tab);
- contents->SetAccessibleName(WideToUTF16Hack(title));
PreferredSizeChanged();
}
@@ -60,6 +61,10 @@ void TabbedPane::SelectTabAt(int index) {
native_tabbed_pane_->SelectTabAt(index);
}
+void TabbedPane::SetAccessibleName(const string16& name) {
+ accessible_name_ = name;
+}
+
int TabbedPane::GetTabCount() {
return native_tabbed_pane_->GetTabCount();
}
@@ -118,8 +123,10 @@ void TabbedPane::OnFocus() {
native_tabbed_pane_->SetFocus();
View* selected_tab = GetSelectedTab();
- if (selected_tab)
- selected_tab->NotifyAccessibilityEvent(AccessibilityTypes::EVENT_FOCUS);
+ if (selected_tab) {
+ selected_tab->GetWidget()->NotifyAccessibilityEvent(
+ selected_tab, ui::AccessibilityTypes::EVENT_FOCUS, true);
+ }
}
else
View::OnFocus(); // Will focus the RootView window (so we still get
@@ -131,8 +138,9 @@ void TabbedPane::OnPaintFocusBorder(gfx::Canvas* canvas) {
View::OnPaintFocusBorder(canvas);
}
-AccessibilityTypes::Role TabbedPane::GetAccessibleRole() {
- return AccessibilityTypes::ROLE_PAGETABLIST;
+void TabbedPane::GetAccessibleState(ui::AccessibleViewState* state) {
+ state->role = ui::AccessibilityTypes::ROLE_PAGETABLIST;
+ state->name = accessible_name_;
}
gfx::Size TabbedPane::GetPreferredSize() {