Closed
Bug 287390
Opened 20 years ago
Closed 20 years ago
Name & default action do not work on <input type="image">
Categories
(Firefox :: Disability Access, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: aaronlev, Assigned: aaronlev)
Details
(Keywords: access)
Attachments
(1 file)
Steps:
Load a page with an image button <input type="image"> and an accessibility
testing tool. Try to activate the default action on the image button.
The problem is that we're creating an nsHTML4ButtonAccessible instead of an
nsHTMLButtonAccessible
Assignee | ||
Comment 1•20 years ago
|
||
The accessible name is also incorrect.
Summary: Accesible default action does not work on <input type="image"> → Name & default action do not work on <input type="image">
Assignee | ||
Comment 2•20 years ago
|
||
Also fixes bug 280053
Attachment #178402 -
Flags: review?(pkwarren)
Updated•20 years ago
|
Attachment #178402 -
Flags: review?(pkwarren) → review+
Assignee | ||
Updated•20 years ago
|
Attachment #178402 -
Flags: superreview?(jst)
Comment 3•20 years ago
|
||
Comment on attachment 178402 [details] [diff] [review]
1) Create correct kind of accessible for each kind of button, 2) Better name getting algorithm for buttons 3) Better recognize anonymous frames
- In nsAccessible::AppendNameFromAccessibleFor():
- In AppendFlatStringFromContentNode():
if (aContent->Tag() == nsAccessibilityAtoms::img) {
...
+ if (aContent->Tag() == nsAccessibilityAtoms::input) {
...
+ if (aContent->Tag() == nsAccessibilityAtoms::object &&
!aContent->GetChildCount()) {
...
aContent->Tag() is a virtual call, you'd be better off caching the atom you get
from that call in a raw nsIAtom* local. You'd save on both speed and size.
- In nsHTMLButtonAccessible::GetName():
+ shell->GetAnonymousContentFor(content, getter_AddRefs(anonymousElements));
+ if (anonymousElements) {
+ nsCOMPtr<nsIDOMNode> domNode(do_QueryElementAt(anonymousElements, 0));
do_QueryElementAt() is null safe, so no need for the first if-check there.
sr=jst
Attachment #178402 -
Flags: superreview?(jst) → superreview+
Assignee | ||
Comment 4•20 years ago
|
||
Checking in layout/forms/nsImageControlFrame.cpp;
/cvsroot/mozilla/layout/forms/nsImageControlFrame.cpp,v <--
nsImageControlFrame.cpp
new revision: 3.103; previous revision: 3.102
done
Checking in accessible/src/base/nsAccessibilityAtomList.h;
/cvsroot/mozilla/accessible/src/base/nsAccessibilityAtomList.h,v <--
nsAccessibilityAtomList.h
new revision: 1.17; previous revision: 1.16
done
Checking in accessible/src/base/nsAccessible.cpp;
/cvsroot/mozilla/accessible/src/base/nsAccessible.cpp,v <-- nsAccessible.cpp
new revision: 1.137; previous revision: 1.136
done
Checking in accessible/src/base/nsAccessible.h;
/cvsroot/mozilla/accessible/src/base/nsAccessible.h,v <-- nsAccessible.h
new revision: 1.57; previous revision: 1.56
done
Checking in accessible/src/base/nsAccessibleTreeWalker.cpp;
/cvsroot/mozilla/accessible/src/base/nsAccessibleTreeWalker.cpp,v <--
nsAccessibleTreeWalker.cpp
new revision: 1.14; previous revision: 1.13
done
Checking in accessible/src/html/nsHTMLFormControlAccessible.cpp;
/cvsroot/mozilla/accessible/src/html/nsHTMLFormControlAccessible.cpp,v <--
nsHTMLFormControlAccessible.cpp
new revision: 1.59; previous revision: 1.58
done
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•