Title: [162466] trunk
Revision
162466
Author
[email protected]
Date
2014-01-21 12:56:44 -0800 (Tue, 21 Jan 2014)

Log Message

AX: Mac: Expose the visible text of a password field to AX
https://bugs.webkit.org/show_bug.cgi?id=127353

Reviewed by Brent Fulgham.

Source/WebCore:

The Mac platform should now expose the rendered value of password fields through AX.

Test: accessibility/password-field-value.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textLength):
(WebCore::AccessibilityRenderObject::passwordFieldValue):

LayoutTests:

* accessibility/password-field-value-expected.txt: Added.
* accessibility/password-field-value.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (162465 => 162466)


--- trunk/LayoutTests/ChangeLog	2014-01-21 20:32:14 UTC (rev 162465)
+++ trunk/LayoutTests/ChangeLog	2014-01-21 20:56:44 UTC (rev 162466)
@@ -1,3 +1,13 @@
+2014-01-21  Chris Fleizach  <[email protected]>
+
+        AX: Mac: Expose the visible text of a password field to AX
+        https://bugs.webkit.org/show_bug.cgi?id=127353
+
+        Reviewed by Brent Fulgham.
+
+        * accessibility/password-field-value-expected.txt: Added.
+        * accessibility/password-field-value.html: Added.
+
 2014-01-21  Tamas Gergely  <[email protected]>
 
         ASSERT(time.isFinite()) in SVGSMILElement::createInstanceTimesFromSyncbase

Added: trunk/LayoutTests/accessibility/password-field-value-expected.txt (0 => 162466)


--- trunk/LayoutTests/accessibility/password-field-value-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/accessibility/password-field-value-expected.txt	2014-01-21 20:56:44 UTC (rev 162466)
@@ -0,0 +1,11 @@
+
+This tests that the AX exposed value of a password field is the rendered text.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+Password field: AXValue: ••••
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Added: trunk/LayoutTests/accessibility/password-field-value.html (0 => 162466)


--- trunk/LayoutTests/accessibility/password-field-value.html	                        (rev 0)
+++ trunk/LayoutTests/accessibility/password-field-value.html	2014-01-21 20:56:44 UTC (rev 162466)
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+</head>
+<body id="body">
+
+<input type="password" id="pass" value="test">
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+
+    description("This tests that the AX exposed value of a password field is the rendered text.");
+
+    if (window.accessibilityController) {
+        debug("Password field: " + accessibilityController.accessibleElementById("pass").stringValue);
+    }
+    successfullyParsed = true;
+
+</script>
+
+<script src=""
+</body>
+</html>

Modified: trunk/Source/WebCore/ChangeLog (162465 => 162466)


--- trunk/Source/WebCore/ChangeLog	2014-01-21 20:32:14 UTC (rev 162465)
+++ trunk/Source/WebCore/ChangeLog	2014-01-21 20:56:44 UTC (rev 162466)
@@ -1,3 +1,18 @@
+2014-01-21  Chris Fleizach  <[email protected]>
+
+        AX: Mac: Expose the visible text of a password field to AX
+        https://bugs.webkit.org/show_bug.cgi?id=127353
+
+        Reviewed by Brent Fulgham.
+
+        The Mac platform should now expose the rendered value of password fields through AX.
+
+        Test: accessibility/password-field-value.html
+
+        * accessibility/AccessibilityRenderObject.cpp:
+        (WebCore::AccessibilityRenderObject::textLength):
+        (WebCore::AccessibilityRenderObject::passwordFieldValue):
+
 2014-01-21  Robert Sipka  <[email protected]>
 
         Support SSL error handling in case of synchronous job.

Modified: trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp (162465 => 162466)


--- trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp	2014-01-21 20:32:14 UTC (rev 162465)
+++ trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp	2014-01-21 20:56:44 UTC (rev 162466)
@@ -1393,11 +1393,7 @@
     ASSERT(isTextControl());
     
     if (isPasswordField())
-#if PLATFORM(GTK)
         return passwordFieldValue().length();
-#else
-        return -1; // need to return something distinct from 0
-#endif
 
     return text().length();
 }
@@ -3359,7 +3355,6 @@
 
 String AccessibilityRenderObject::passwordFieldValue() const
 {
-#if PLATFORM(GTK)
     ASSERT(isPasswordField());
 
     // Look for the RenderText object in the RenderObject tree for this input field.
@@ -3371,11 +3366,7 @@
         return String();
 
     // Return the text that is actually being rendered in the input field.
-    return static_cast<RenderText*>(renderer)->textWithoutConvertingBackslashToYenSymbol();
-#else
-    // It seems only GTK is interested in this at the moment.
-    return String();
-#endif
+    return toRenderText(renderer)->textWithoutConvertingBackslashToYenSymbol();
 }
 
 ScrollableArea* AccessibilityRenderObject::getScrollableAreaIfScrollable() const
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to