Commit 3aa54ea7 authored by evy@chromium.org's avatar evy@chromium.org

Added accessible name to bookmark_bar_instructions_view.

The state is now taken from the label with the instructions within the bookmark bar.
Now an empty bookmark bar's label is accessible.

BUG=395895

Review URL: https://codereview.chromium.org/408103002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285704 0039d316-1c4b-4281-b951-d872f2087c98
parent f5d93c0e
......@@ -48,7 +48,6 @@ void SendWindowAccessibilityNotification(
}
}
AccessibilityControlInfo::AccessibilityControlInfo(
Profile* profile, const std::string& name)
: AccessibilityEventInfo(profile),
......@@ -86,6 +85,17 @@ const char* AccessibilityButtonInfo::type() const {
return keys::kTypeButton;
}
AccessibilityStaticTextInfo::AccessibilityStaticTextInfo(Profile* profile,
const std::string& text,
const std::string& context)
: AccessibilityControlInfo(profile, text) {
set_context(context);
}
const char* AccessibilityStaticTextInfo::type() const {
return keys::kTypeStaticText;
}
AccessibilityLinkInfo::AccessibilityLinkInfo(Profile* profile,
const std::string& link_name,
const std::string& context)
......
......@@ -104,6 +104,17 @@ class AccessibilityButtonInfo : public AccessibilityControlInfo {
virtual const char* type() const OVERRIDE;
};
// Accessibility information about static text passed to onControlFocused
// and onControlAction event listeners.
class AccessibilityStaticTextInfo : public AccessibilityControlInfo {
public:
AccessibilityStaticTextInfo(Profile* profile,
const std::string& text,
const std::string& context);
virtual const char* type() const OVERRIDE;
};
// Accessibility information about a hyperlink passed to onControlFocused
// and onControlAction event listeners.
class AccessibilityLinkInfo : public AccessibilityControlInfo {
......
......@@ -35,6 +35,7 @@ const char kTypeMenu[] = "menu";
const char kTypeMenuItem[] = "menuitem";
const char kTypeRadioButton[] = "radiobutton";
const char kTypeSlider[] = "slider";
const char kTypeStaticText[] = "statictext";
const char kTypeTab[] = "tab";
const char kTypeTextBox[] = "textbox";
const char kTypeTree[] = "tree";
......
......@@ -38,6 +38,7 @@ extern const char kTypeMenu[];
extern const char kTypeMenuItem[];
extern const char kTypeRadioButton[];
extern const char kTypeSlider[];
extern const char kTypeStaticText[];
extern const char kTypeTab[];
extern const char kTypeTextBox[];
extern const char kTypeTree[];
......
......@@ -632,6 +632,9 @@ cvox.AccessibilityApiHandler.prototype.describe = function(control, isSelect) {
s += msg('describe_button', [name]);
braille.roleMsg = 'tag_button';
break;
case 'statictext':
s += control.name;
break;
case 'combobox':
case 'listbox':
earcon = cvox.AbstractEarcons.LISTBOX;
......
......@@ -226,6 +226,9 @@ void AccessibilityEventRouterViews::DispatchAccessibilityEvent(
case ui::AX_ROLE_SLIDER:
SendSliderNotification(view, type, profile);
break;
case ui::AX_ROLE_STATIC_TEXT:
SendStaticTextNotification(view, type, profile);
break;
case ui::AX_ROLE_TREE:
SendTreeNotification(view, type, profile);
break;
......@@ -272,6 +275,16 @@ void AccessibilityEventRouterViews::SendButtonNotification(
SendControlAccessibilityNotification(event, &info);
}
// static
void AccessibilityEventRouterViews::SendStaticTextNotification(
views::View* view,
ui::AXEvent event,
Profile* profile) {
AccessibilityStaticTextInfo info(
profile, GetViewName(view), GetViewContext(view));
SendControlAccessibilityNotification(event, &info);
}
// static
void AccessibilityEventRouterViews::SendLinkNotification(
views::View* view,
......
......@@ -88,6 +88,10 @@ class AccessibilityEventRouterViews : public content::NotificationObserver {
views::View* view,
ui::AXEvent event,
Profile* profile);
static void SendStaticTextNotification(
views::View* view,
ui::AXEvent event,
Profile* profile);
static void SendLinkNotification(
views::View* view,
ui::AXEvent event,
......
......@@ -99,7 +99,7 @@ void BookmarkBarInstructionsView::ViewHierarchyChanged(
void BookmarkBarInstructionsView::GetAccessibleState(
ui::AXViewState* state) {
state->role = ui::AX_ROLE_GROUP;
instructions_->GetAccessibleState(state);
}
void BookmarkBarInstructionsView::LinkClicked(views::Link* source,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment