[AX] SVG element with child desc not exposed
authorjdiggs@igalia.com <jdiggs@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 14 Mar 2016 17:18:53 +0000 (17:18 +0000)
committerjdiggs@igalia.com <jdiggs@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 14 Mar 2016 17:18:53 +0000 (17:18 +0000)
https://bugs.webkit.org/show_bug.cgi?id=155374

Reviewed by Darin Adler.

Source/WebCore:

Covered by the accessibility/w3c-svg-roles.html test, which was updated.

AccessibilitySVGRoot is now a subclass of AccessibilitySVGElement, which
exposes SVG elements with a child desc element as per the specification.
Also made existing protected methods private.

* accessibility/AccessibilitySVGElement.h:
* accessibility/AccessibilitySVGRoot.cpp:
(WebCore::AccessibilitySVGRoot::AccessibilitySVGRoot):
(WebCore::AccessibilitySVGRoot::parentObject):
* accessibility/AccessibilitySVGRoot.h:

LayoutTests:

* platform/gtk/accessibility/w3c-svg-roles-expected.txt: Updated.
* platform/mac/accessibility/w3c-svg-roles-expected.txt: Updated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@198137 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/platform/gtk/accessibility/w3c-svg-roles-expected.txt
LayoutTests/platform/mac/accessibility/w3c-svg-roles-expected.txt
Source/WebCore/ChangeLog
Source/WebCore/accessibility/AccessibilitySVGElement.h
Source/WebCore/accessibility/AccessibilitySVGRoot.cpp
Source/WebCore/accessibility/AccessibilitySVGRoot.h

index 9a6a76e..a7ad7d1 100644 (file)
@@ -1,3 +1,13 @@
+2016-03-14  Joanmarie Diggs  <jdiggs@igalia.com>
+
+        [AX] SVG element with child desc not exposed
+        https://bugs.webkit.org/show_bug.cgi?id=155374
+
+        Reviewed by Darin Adler.
+
+        * platform/gtk/accessibility/w3c-svg-roles-expected.txt: Updated.
+        * platform/mac/accessibility/w3c-svg-roles-expected.txt: Updated.
+
 2016-03-14  Ryan Haddad  <ryanhaddad@apple.com>
 
         Skip asserting test http/tests/security/aboutBlank/security-context-write.html
index 0981c19..f3549b3 100644 (file)
@@ -83,7 +83,7 @@ test26:
        AXRole: AXImage
 test27:
        Expected role: group
-       Element not exposed
+       AXRole: AXGroup
 test28:
        Expected role: img
        AXRole: AXImage
index f37ab8f..7d94cef 100644 (file)
@@ -83,7 +83,7 @@ test26:
        AXRole: AXImage
 test27:
        Expected role: group
-       Element not exposed
+       AXRole: AXGroup
 test28:
        Expected role: img
        AXRole: AXImage
index 3eb6e83..f3592cc 100644 (file)
@@ -1,3 +1,22 @@
+2016-03-14  Joanmarie Diggs  <jdiggs@igalia.com>
+
+        [AX] SVG element with child desc not exposed
+        https://bugs.webkit.org/show_bug.cgi?id=155374
+
+        Reviewed by Darin Adler.
+
+        Covered by the accessibility/w3c-svg-roles.html test, which was updated.
+
+        AccessibilitySVGRoot is now a subclass of AccessibilitySVGElement, which
+        exposes SVG elements with a child desc element as per the specification.
+        Also made existing protected methods private.
+
+        * accessibility/AccessibilitySVGElement.h:
+        * accessibility/AccessibilitySVGRoot.cpp:
+        (WebCore::AccessibilitySVGRoot::AccessibilitySVGRoot):
+        (WebCore::AccessibilitySVGRoot::parentObject):
+        * accessibility/AccessibilitySVGRoot.h:
+
 2016-03-14  Alexey Proskuryakov  <ap@apple.com>
 
         Build fix.
index cdbc733..3ccfb95 100644 (file)
 
 namespace WebCore {
 
-class AccessibilitySVGElement final : public AccessibilityRenderObject {
+class AccessibilitySVGElement : public AccessibilityRenderObject {
 
 public:
     static Ref<AccessibilitySVGElement> create(RenderObject*);
     virtual ~AccessibilitySVGElement();
 
-    String accessibilityDescription() const override;
-    String helpText() const override;
+    String accessibilityDescription() const final;
+    String helpText() const final;
 
 protected:
     explicit AccessibilitySVGElement(RenderObject*);
-    bool isAccessibilitySVGElement() const override { return true; }
-    bool computeAccessibilityIsIgnored() const override;
-    AccessibilityRole determineAriaRoleAttribute() const;
 
 private:
-    void accessibilityText(Vector<AccessibilityText>&) override;
-    AccessibilityRole determineAccessibilityRole() override;
-    bool inheritsPresentationalRole() const override;
+    void accessibilityText(Vector<AccessibilityText>&) final;
+    AccessibilityRole determineAccessibilityRole() final;
+    virtual AccessibilityRole determineAriaRoleAttribute() const;
+    bool inheritsPresentationalRole() const final;
+    bool isAccessibilitySVGElement() const final { return true; }
+    bool computeAccessibilityIsIgnored() const final;
 
     AccessibilityObject* targetForUseElement() const;
 };
index 2b62d92..3dab320 100644 (file)
@@ -34,7 +34,7 @@
 namespace WebCore {
 
 AccessibilitySVGRoot::AccessibilitySVGRoot(RenderObject* renderer)
-    : AccessibilityRenderObject(renderer)
+    : AccessibilitySVGElement(renderer)
     , m_parent(nullptr)
 {
 }
@@ -55,7 +55,7 @@ AccessibilityObject* AccessibilitySVGRoot::parentObject() const
     if (m_parent)
         return m_parent;
     
-    return AccessibilityRenderObject::parentObject();
+    return AccessibilitySVGElement::parentObject();
 }
 
     
index 4ff5e47..cf16b5e 100644 (file)
 #ifndef AccessibilitySVGRoot_h
 #define AccessibilitySVGRoot_h
 
-#include "AccessibilityRenderObject.h"
+#include "AccessibilitySVGElement.h"
 
 namespace WebCore {
 
-class AccessibilitySVGRoot final : public AccessibilityRenderObject {
+class AccessibilitySVGRoot final : public AccessibilitySVGElement {
 public:
     static Ref<AccessibilitySVGRoot> create(RenderObject*);
     virtual ~AccessibilitySVGRoot();