mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 11:25:00 +00:00
Bug 1491210 - stop using nsIDOMXULLabeledControlElement, r=jamie
This commit is contained in:
parent
14d863897b
commit
ed5f3a33f3
@ -10,7 +10,6 @@
|
||||
#include "Accessible-inl.h"
|
||||
#include "AccIterator.h"
|
||||
#include "nsCoreUtils.h"
|
||||
#include "nsIDOMXULLabeledControlEl.h"
|
||||
#include "mozilla/dom/Text.h"
|
||||
|
||||
using namespace mozilla;
|
||||
@ -307,20 +306,17 @@ nsTextEquivUtils::AppendFromDOMNode(nsIContent *aContent, nsAString *aString)
|
||||
|
||||
if (aContent->IsXULElement()) {
|
||||
nsAutoString textEquivalent;
|
||||
nsCOMPtr<nsIDOMXULLabeledControlElement> labeledEl =
|
||||
do_QueryInterface(aContent);
|
||||
|
||||
if (labeledEl) {
|
||||
labeledEl->GetLabel(textEquivalent);
|
||||
if (aContent->NodeInfo()->Equals(nsGkAtoms::label, kNameSpaceID_XUL)) {
|
||||
aContent->AsElement()->GetAttr(kNameSpaceID_None, nsGkAtoms::value,
|
||||
textEquivalent);
|
||||
} else {
|
||||
if (aContent->NodeInfo()->Equals(nsGkAtoms::label,
|
||||
kNameSpaceID_XUL))
|
||||
aContent->AsElement()->GetAttr(kNameSpaceID_None, nsGkAtoms::value,
|
||||
textEquivalent);
|
||||
aContent->AsElement()->GetAttr(kNameSpaceID_None, nsGkAtoms::label,
|
||||
textEquivalent);
|
||||
}
|
||||
|
||||
if (textEquivalent.IsEmpty())
|
||||
aContent->AsElement()->GetAttr(kNameSpaceID_None,
|
||||
nsGkAtoms::tooltiptext, textEquivalent);
|
||||
if (textEquivalent.IsEmpty()) {
|
||||
aContent->AsElement()->GetAttr(kNameSpaceID_None,
|
||||
nsGkAtoms::tooltiptext, textEquivalent);
|
||||
}
|
||||
|
||||
AppendString(aString, textEquivalent);
|
||||
|
@ -804,20 +804,15 @@ Accessible::XULElmName(DocAccessible* aDocument,
|
||||
*/
|
||||
|
||||
// CASE #1 (via label attribute) -- great majority of the cases
|
||||
nsCOMPtr<nsIDOMXULLabeledControlElement> labeledEl = do_QueryInterface(aElm);
|
||||
if (labeledEl) {
|
||||
labeledEl->GetLabel(aName);
|
||||
nsCOMPtr<nsIDOMXULSelectControlItemElement> itemEl = do_QueryInterface(aElm);
|
||||
if (itemEl) {
|
||||
itemEl->GetLabel(aName);
|
||||
} else {
|
||||
nsCOMPtr<nsIDOMXULSelectControlItemElement> itemEl = do_QueryInterface(aElm);
|
||||
if (itemEl) {
|
||||
itemEl->GetLabel(aName);
|
||||
} else {
|
||||
nsCOMPtr<nsIDOMXULSelectControlElement> select = do_QueryInterface(aElm);
|
||||
// Use label if this is not a select control element which
|
||||
// uses label attribute to indicate which option is selected
|
||||
if (!select && aElm->IsElement()) {
|
||||
aElm->AsElement()->GetAttribute(NS_LITERAL_STRING("label"), aName);
|
||||
}
|
||||
// Use @label if this is not a select control element, which uses label
|
||||
// attribute to indicate, which option is selected.
|
||||
nsCOMPtr<nsIDOMXULSelectControlElement> select = do_QueryInterface(aElm);
|
||||
if (!select) {
|
||||
aElm->AsElement()->GetAttr(kNameSpaceID_None, nsGkAtoms::label, aName);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -72,10 +72,10 @@
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Name for nsIDOMXULLabeledControlElement.
|
||||
// Name from @label attribute.
|
||||
|
||||
// Gets the name from @label attribute.
|
||||
testName("btn_nsIDOMXULLabeledControlElement", "labeled element");
|
||||
testName("btn_labelattr", "labeled element");
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@ -271,8 +271,8 @@
|
||||
<button id="btn_labelledby_mixed_menulist"
|
||||
aria-labelledby="labelledby_mixed_menulist"/>
|
||||
|
||||
<!-- nsIDOMXULLabeledControlElement -->
|
||||
<button id="btn_nsIDOMXULLabeledControlElement"
|
||||
<!-- @label -->
|
||||
<button id="btn_labelattr"
|
||||
label="labeled element"/>
|
||||
|
||||
<!-- nsIDOMXULSelectControlItemElement -->
|
||||
|
Loading…
Reference in New Issue
Block a user