From e69ef9ae7264c27ac81bdbae83736f3c855f44b0 Mon Sep 17 00:00:00 2001 From: Eitan Isaacson Date: Wed, 11 Sep 2013 17:06:22 -0700 Subject: [PATCH] Bug 791916 - Make label tag a label accessible regardless of frame type. r=surkov --- accessible/src/base/AccTypes.h | 1 - accessible/src/base/nsAccessibilityService.cpp | 9 ++++++--- layout/generic/nsInlineFrame.cpp | 2 -- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/accessible/src/base/AccTypes.h b/accessible/src/base/AccTypes.h index e11bd0555a10..7edcf6f649d7 100644 --- a/accessible/src/base/AccTypes.h +++ b/accessible/src/base/AccTypes.h @@ -29,7 +29,6 @@ enum AccType { eHTMLGroupboxType, eHTMLHRType, eHTMLImageMapType, - eHTMLLabelType, eHTMLLiType, eHTMLSelectListType, eHTMLMediaType, diff --git a/accessible/src/base/nsAccessibilityService.cpp b/accessible/src/base/nsAccessibilityService.cpp index ac8ddc31c671..0093a5b632f6 100644 --- a/accessible/src/base/nsAccessibilityService.cpp +++ b/accessible/src/base/nsAccessibilityService.cpp @@ -1435,6 +1435,12 @@ nsAccessibilityService::CreateHTMLAccessibleByMarkup(nsIFrame* aFrame, return accessible.forget(); } + if (tag == nsGkAtoms::label) { + nsRefPtr accessible = + new HTMLLabelAccessible(aContent, document); + return accessible.forget(); + } + if (tag == nsGkAtoms::output) { nsRefPtr accessible = new HTMLOutputAccessible(aContent, document); @@ -1494,9 +1500,6 @@ nsAccessibilityService::CreateAccessibleByFrameType(nsIFrame* aFrame, case eHTMLImageMapType: newAcc = new HTMLImageMapAccessible(aContent, document); break; - case eHTMLLabelType: - newAcc = new HTMLLabelAccessible(aContent, document); - break; case eHTMLLiType: if (aContext->IsList() && aContext->GetContent() == aContent->GetParent()) { diff --git a/layout/generic/nsInlineFrame.cpp b/layout/generic/nsInlineFrame.cpp index ef40aba27374..62b86701db8d 100644 --- a/layout/generic/nsInlineFrame.cpp +++ b/layout/generic/nsInlineFrame.cpp @@ -916,8 +916,6 @@ nsInlineFrame::AccessibleType() return a11y::eHTMLButtonType; if (tagAtom == nsGkAtoms::img) // Create accessible for broken return a11y::eHyperTextType; - if (tagAtom == nsGkAtoms::label) // Creat accessible for