diff --git a/accessible/base/nsAccessibilityService.cpp b/accessible/base/nsAccessibilityService.cpp index cf05e263cd06..fc0c387af734 100644 --- a/accessible/base/nsAccessibilityService.cpp +++ b/accessible/base/nsAccessibilityService.cpp @@ -1115,6 +1115,8 @@ Accessible* nsAccessibilityService::CreateAccessible(nsINode* aNode, // polyline and image. A 'use' and 'text' graphic elements require // special support. newAcc = new EnumRoleAccessible(content, document); + } else if (content->IsSVGElement(nsGkAtoms::text)) { + newAcc = new HyperTextAccessibleWrap(content->AsElement(), document); } else if (content->IsSVGElement(nsGkAtoms::svg)) { newAcc = new EnumRoleAccessible(content, document); } diff --git a/accessible/tests/mochitest/tree/a11y.ini b/accessible/tests/mochitest/tree/a11y.ini index 339bcef03acb..b82e0e655751 100644 --- a/accessible/tests/mochitest/tree/a11y.ini +++ b/accessible/tests/mochitest/tree/a11y.ini @@ -43,6 +43,7 @@ skip-if = true # Bug 561508 [test_map.html] [test_media.html] [test_select.html] +[test_svg.html] [test_tabbox.xul] [test_tabbrowser.xul] skip-if = (os == 'linux' && debug) || (os == 'win' && ccov) # Bug 1389365 || bug 1423218 diff --git a/accessible/tests/mochitest/tree/test_svg.html b/accessible/tests/mochitest/tree/test_svg.html new file mode 100644 index 000000000000..bd48653c79e6 --- /dev/null +++ b/accessible/tests/mochitest/tree/test_svg.html @@ -0,0 +1,47 @@ + + + + SVG Tree Tests + + + + + + + + + + +

+ +
+  
+ + This is some text + + +