WebKit Bugzilla
Attachment 362770 Details for
Bug 194923
: AX: Treat AXChildrenInNavigationOrder as AXChildren before adding support for aria-flowto
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-194923-20190222152401.patch (text/plain), 5.99 KB, created by
Eric Liang
on 2019-02-22 15:24:02 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Eric Liang
Created:
2019-02-22 15:24:02 PST
Size:
5.99 KB
patch
obsolete
>Subversion Revision: 241874 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 2399fa5be124d0412e0665898fc95b005956205a..41418519d941859f12576a030cd80f4d6d9040fb 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,17 @@ >+2019-02-22 Eric Liang <ericliang@apple.com> >+ >+ AX: Treat AXChildrenInNavigationOrder as AXChildren before adding support for aria-flowto >+ https://bugs.webkit.org/show_bug.cgi?id=194923 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ AXChildrenInNavigationOrder returns different array of elements than that from AXChildren for AppKit. This is because currently WebKit doesn't support AXChildrenInNavigationOrder, and though AppKit's fallback, AppKit reorder them based on horizontal positions. Added this temporary support for WebKit so that AppKit doesn't reorder them. >+ >+ Test: accessibility/mac/children-in-navigation-order-returns-children.html >+ >+ * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: >+ (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]): >+ > 2019-02-21 Zalan Bujtas <zalan@apple.com> > > [LFC][Floats] Add support for placing formatting roots in-between floats. >diff --git a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm b/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm >index f7445912f1814f6acde1ab29fa0658e8c40cde7b..446d358cf03a73b1d299762fc2cd4abe91b8d702 100644 >--- a/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm >+++ b/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm >@@ -153,6 +153,10 @@ using namespace HTMLNames; > #define NSAccessibilityBlockQuoteLevelAttribute @"AXBlockQuoteLevel" > #endif > >+#ifndef NSAccessibilityChildrenInNavigationOrderAttribute >+#define NSAccessibilityChildrenInNavigationOrderAttribute @"AXChildrenInNavigationOrder" >+#endif >+ > #ifndef NSAccessibilityAccessKeyAttribute > #define NSAccessibilityAccessKeyAttribute @"AXAccessKey" > #endif >@@ -2482,7 +2486,7 @@ IGNORE_WARNINGS_END > return parent->wrapper(); > } > >- if ([attributeName isEqualToString: NSAccessibilityChildrenAttribute]) { >+ if ([attributeName isEqualToString: NSAccessibilityChildrenAttribute] || [attributeName isEqualToString: NSAccessibilityChildrenInNavigationOrderAttribute]) { > if (!self.childrenVectorSize) { > NSArray* children = [self renderWidgetChildren]; > if (children != nil) >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index f7b08979a665ee549b2d703aaf629fe16b3d2b25..df74bfe5eecd73ac2dba84294c5a5c7710a0a531 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,14 @@ >+2019-02-22 Eric Liang <ericliang@apple.com> >+ >+ AX: Treat AXChildrenInNavigationOrder as AXChildren before adding support for aria-flowto >+ https://bugs.webkit.org/show_bug.cgi?id=194923 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Added test to check AXChildrenInNavigationOrder returns the same array of elements as that of AXChildren >+ * accessibility/mac/children-in-navigation-order-returns-children-expected.txt: Added. >+ * accessibility/mac/children-in-navigation-order-returns-children.html: Added. >+ > 2019-02-21 Zalan Bujtas <zalan@apple.com> > > [LFC][Floats] Add support for placing formatting roots in-between floats. >diff --git a/LayoutTests/accessibility/mac/children-in-navigation-order-returns-children-expected.txt b/LayoutTests/accessibility/mac/children-in-navigation-order-returns-children-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..7f5beecb2935c6294e21fd277b02480db67b8523 >--- /dev/null >+++ b/LayoutTests/accessibility/mac/children-in-navigation-order-returns-children-expected.txt >@@ -0,0 +1,13 @@ >+This tests that AXChildrenInNavigationOrder returns AXChildren. >+ >+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". >+ >+ >+PASS children0.length is 2 >+PASS children1.length is 2 >+PASS children0[i].role == children1[i].role is true >+PASS children0[i].role == children1[i].role is true >+PASS successfullyParsed is true >+ >+TEST COMPLETE >+ >diff --git a/LayoutTests/accessibility/mac/children-in-navigation-order-returns-children.html b/LayoutTests/accessibility/mac/children-in-navigation-order-returns-children.html >new file mode 100644 >index 0000000000000000000000000000000000000000..e1a9bc01a4a769d124d9cef27cd33d9f5f9f465a >--- /dev/null >+++ b/LayoutTests/accessibility/mac/children-in-navigation-order-returns-children.html >@@ -0,0 +1,51 @@ >+<!DOCTYPE html> >+<html> >+<head> >+<style> >+.span-absolute { >+ position: absolute; >+ overflow: hidden; >+ height: 1px; >+} >+.lineheight{ >+ line-height: 1.32; >+} >+</style> >+</head> >+<body id="body"> >+<script src="../../resources/js-test-pre.js"></script> >+<div id="content"> >+<div> >+ <a id="test0" href="https://www.apple.com">Learn more <span class="span-absolute">about Apple</span></a> >+</div> >+<div class="lineheight"> >+ <a id="test1" href="https://www.apple.com">Learn more <span class="span-absolute">about Apple</span></a> >+</div> >+</div> >+<p id="description"></p> >+<div id="console"></div> >+ >+<script> >+ description("This tests that AXChildrenInNavigationOrder returns AXChildren."); >+ >+ if (window.accessibilityController) { >+ var testElement0 = accessibilityController.accessibleElementById("test0"); >+ var testElement1 = accessibilityController.accessibleElementById("test1"); >+ var children0 = testElement0.uiElementArrayAttributeValue("AXChildren"); >+ var children1 = testElement1.uiElementArrayAttributeValue("AXChildrenInNavigationOrder"); >+ shouldBe("children0.length", "2"); >+ shouldBe("children1.length", "2"); >+ for (var i = 0; i < 2; i++) { >+ shouldBeTrue("children0[i].role == children1[i].role"); >+ } >+ >+ document.getElementById("content").style.visibility = 'hidden'; >+ } else { >+ testFailed("Could not load accessibility controller"); >+ } >+ >+</script> >+ >+<script src="../../resources/js-test-post.js"></script> >+</body> >+</html>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 194923
:
362662
|
362770
|
362772
|
362797
|
362810
|
362813