<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[152537] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/152537">152537</a></dd>
<dt>Author</dt> <dd>mario@webkit.org</dd>
<dt>Date</dt> <dd>2013-07-10 09:20:24 -0700 (Wed, 10 Jul 2013)</dd>
</dl>

<h3>Log Message</h3>
<pre>AX: Allow requesting the full plain text for an object with textUnderElement()
https://bugs.webkit.org/show_bug.cgi?id=105214

Reviewed by Chris Fleizach.

Source/WebCore:

Allow specifying different function modes for textUnderElement(),
so we can effectively ask for the &quot;normal&quot; result (e.g to retrieve
test to be exposed as the 'title') or for the full text under the
element (without omitting any child in the subtree). This is
needed for the implementation of atk_text_get_text() in GTK/EFL.

* accessibility/AccessibilityObject.h: Add new enumeration to
specify the different modes for textUnderElement().
(WebCore::AccessibilityObject::textUnderElement): Added parameter.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::shouldUseAccessiblityObjectInnerText): Always return
'true' when using the &quot;include all children&quot; mode.
(WebCore::AccessibilityNodeObject::textUnderElement): Updated call
to shouldUseAccessiblityObjectInnerText().
* accessibility/AccessibilityNodeObject.h:

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement): Removed
GTK specific code and expand the usage of text iterators beyond
text render objects, using it also when in the &quot;include all
children&quot; mode.
* accessibility/AccessibilityRenderObject.h:

* accessibility/atk/AccessibilityObjectAtk.cpp:
(WebCore::AccessibilityObject::getLengthForTextRange): Updated
call to textUnderElement(), preserving the previous behavior.

* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextGetText): Updated call to textUnderElement(),
using the &quot;include all children&quot; mode.

LayoutTests:

Removed tests that are not longer expected to fail.

* platform/gtk/TestExpectations: Removed tests.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsplatformgtkTestExpectations">trunk/LayoutTests/platform/gtk/TestExpectations</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityAccessibilityNodeObjectcpp">trunk/Source/WebCore/accessibility/AccessibilityNodeObject.cpp</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityAccessibilityNodeObjecth">trunk/Source/WebCore/accessibility/AccessibilityNodeObject.h</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityAccessibilityObjecth">trunk/Source/WebCore/accessibility/AccessibilityObject.h</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityAccessibilityRenderObjectcpp">trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityAccessibilityRenderObjecth">trunk/Source/WebCore/accessibility/AccessibilityRenderObject.h</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityatkAccessibilityObjectAtkcpp">trunk/Source/WebCore/accessibility/atk/AccessibilityObjectAtk.cpp</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityatkWebKitAccessibleInterfaceTextcpp">trunk/Source/WebCore/accessibility/atk/WebKitAccessibleInterfaceText.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/LayoutTests/ChangeLog        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -1,3 +1,14 @@
</span><ins>+2013-07-10  Mario Sanchez Prada  &lt;mario.prada@samsung.com&gt;
+
+        AX: Allow requesting the full plain text for an object with textUnderElement()
+        https://bugs.webkit.org/show_bug.cgi?id=105214
+
+        Reviewed by Chris Fleizach.
+
+        Removed tests that are not longer expected to fail.
+
+        * platform/gtk/TestExpectations: Removed tests.
+
</ins><span class="cx"> 2013-07-10  Simon Pena  &lt;simon.pena@samsung.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [GTK] Unreviewed gardening. Update new baselines after r152494 and r152478
</span></span></pre></div>
<a id="trunkLayoutTestsplatformgtkTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/gtk/TestExpectations (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/TestExpectations        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/LayoutTests/platform/gtk/TestExpectations        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -837,10 +837,7 @@
</span><span class="cx"> webkit.org/b/98359 accessibility/aria-text-role.html [ Failure ]
</span><span class="cx"> webkit.org/b/98360 accessibility/aria-used-on-image-maps.html [ Failure ]
</span><span class="cx"> webkit.org/b/98361 accessibility/button-press-action.html [ Failure ]
</span><del>-webkit.org/b/105214 accessibility/button-title-uses-inner-img-alt.html [ Failure ]
</del><span class="cx"> webkit.org/b/98363 accessibility/canvas-fallback-content-2.html [ Failure ]
</span><del>-webkit.org/b/105214 accessibility/focusable-div.html [ Failure ]
-webkit.org/b/105214 accessibility/listitem-title.html [ Failure ]
</del><span class="cx"> webkit.org/b/98370 accessibility/loading-iframe-sends-notification.html [ Failure ]
</span><span class="cx"> webkit.org/b/98371 accessibility/loading-iframe-updates-axtree.html [ Failure ]
</span><span class="cx"> webkit.org/b/98372 accessibility/onclick-handlers.html [ Failure ]
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/ChangeLog        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -1,3 +1,42 @@
</span><ins>+2013-07-10  Mario Sanchez Prada  &lt;mario.prada@samsung.com&gt;
+
+        AX: Allow requesting the full plain text for an object with textUnderElement()
+        https://bugs.webkit.org/show_bug.cgi?id=105214
+
+        Reviewed by Chris Fleizach.
+
+        Allow specifying different function modes for textUnderElement(),
+        so we can effectively ask for the &quot;normal&quot; result (e.g to retrieve
+        test to be exposed as the 'title') or for the full text under the
+        element (without omitting any child in the subtree). This is
+        needed for the implementation of atk_text_get_text() in GTK/EFL.
+
+        * accessibility/AccessibilityObject.h: Add new enumeration to
+        specify the different modes for textUnderElement().
+        (WebCore::AccessibilityObject::textUnderElement): Added parameter.
+
+        * accessibility/AccessibilityNodeObject.cpp:
+        (WebCore::shouldUseAccessiblityObjectInnerText): Always return
+        'true' when using the &quot;include all children&quot; mode.
+        (WebCore::AccessibilityNodeObject::textUnderElement): Updated call
+        to shouldUseAccessiblityObjectInnerText().
+        * accessibility/AccessibilityNodeObject.h:
+
+        * accessibility/AccessibilityRenderObject.cpp:
+        (WebCore::AccessibilityRenderObject::textUnderElement): Removed
+        GTK specific code and expand the usage of text iterators beyond
+        text render objects, using it also when in the &quot;include all
+        children&quot; mode.
+        * accessibility/AccessibilityRenderObject.h:
+
+        * accessibility/atk/AccessibilityObjectAtk.cpp:
+        (WebCore::AccessibilityObject::getLengthForTextRange): Updated
+        call to textUnderElement(), preserving the previous behavior.
+
+        * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
+        (webkitAccessibleTextGetText): Updated call to textUnderElement(),
+        using the &quot;include all children&quot; mode.
+
</ins><span class="cx"> 2013-07-10  Sergio Correia  &lt;sergio.correia@openbossa.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Remove the meshType from CoordinatedCustomFilterOperation
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityAccessibilityNodeObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/AccessibilityNodeObject.cpp (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/AccessibilityNodeObject.cpp        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/AccessibilityNodeObject.cpp        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -1504,8 +1504,12 @@
</span><span class="cx"> 
</span><span class="cx"> // When building the textUnderElement for an object, determine whether or not
</span><span class="cx"> // we should include the inner text of this given descendant object or skip it.
</span><del>-static bool shouldUseAccessiblityObjectInnerText(AccessibilityObject* obj)
</del><ins>+static bool shouldUseAccessiblityObjectInnerText(AccessibilityObject* obj, AccessibilityTextUnderElementMode mode)
</ins><span class="cx"> {
</span><ins>+    // Do not use any heuristic if we are explicitly asking to include all the children.
+    if (mode == TextUnderElementModeIncludeAllChildren)
+        return true;
+
</ins><span class="cx">     // Consider this hypothetical example:
</span><span class="cx">     // &lt;div tabindex=0&gt;
</span><span class="cx">     //   &lt;h2&gt;
</span><span class="lines">@@ -1542,7 +1546,7 @@
</span><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-String AccessibilityNodeObject::textUnderElement() const
</del><ins>+String AccessibilityNodeObject::textUnderElement(AccessibilityTextUnderElementMode mode) const
</ins><span class="cx"> {
</span><span class="cx">     Node* node = this-&gt;node();
</span><span class="cx">     if (node &amp;&amp; node-&gt;isTextNode())
</span><span class="lines">@@ -1550,7 +1554,7 @@
</span><span class="cx"> 
</span><span class="cx">     StringBuilder builder;
</span><span class="cx">     for (AccessibilityObject* child = firstChild(); child; child = child-&gt;nextSibling()) {
</span><del>-        if (!shouldUseAccessiblityObjectInnerText(child))
</del><ins>+        if (!shouldUseAccessiblityObjectInnerText(child, mode))
</ins><span class="cx">             continue;
</span><span class="cx"> 
</span><span class="cx">         if (child-&gt;isAccessibilityNodeObject()) {
</span><span class="lines">@@ -1564,7 +1568,7 @@
</span><span class="cx">             }
</span><span class="cx">         }
</span><span class="cx"> 
</span><del>-        String childText = child-&gt;textUnderElement();
</del><ins>+        String childText = child-&gt;textUnderElement(mode);
</ins><span class="cx">         if (childText.length()) {
</span><span class="cx">             if (builder.length())
</span><span class="cx">                 builder.append(' ');
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityAccessibilityNodeObjecth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/AccessibilityNodeObject.h (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/AccessibilityNodeObject.h        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/AccessibilityNodeObject.h        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -120,7 +120,7 @@
</span><span class="cx">     virtual AccessibilityButtonState checkboxOrRadioValue() const;
</span><span class="cx"> 
</span><span class="cx">     virtual unsigned hierarchicalLevel() const;
</span><del>-    virtual String textUnderElement() const;
</del><ins>+    virtual String textUnderElement(AccessibilityTextUnderElementMode = TextUnderElementModeSkipIgnoredChildren) const;
</ins><span class="cx">     virtual String accessibilityDescription() const;
</span><span class="cx">     virtual String helpText() const;
</span><span class="cx">     virtual String title() const;
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityAccessibilityObjecth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/AccessibilityObject.h (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/AccessibilityObject.h        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/AccessibilityObject.h        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -239,6 +239,11 @@
</span><span class="cx">         textElements.append(element);
</span><span class="cx">     }
</span><span class="cx"> };
</span><ins>+
+enum AccessibilityTextUnderElementMode {
+    TextUnderElementModeSkipIgnoredChildren,
+    TextUnderElementModeIncludeAllChildren
+};
</ins><span class="cx">     
</span><span class="cx"> enum AccessibilityOrientation {
</span><span class="cx">     AccessibilityOrientationVertical,
</span><span class="lines">@@ -585,7 +590,7 @@
</span><span class="cx"> 
</span><span class="cx">     // Methods for determining accessibility text.
</span><span class="cx">     virtual String stringValue() const { return String(); }
</span><del>-    virtual String textUnderElement() const { return String(); }
</del><ins>+    virtual String textUnderElement(AccessibilityTextUnderElementMode = TextUnderElementModeSkipIgnoredChildren) const { return String(); }
</ins><span class="cx">     virtual String text() const { return String(); }
</span><span class="cx">     virtual int textLength() const { return 0; }
</span><span class="cx">     virtual String ariaLabeledByAttribute() const { return String(); }
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityAccessibilityRenderObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -626,7 +626,7 @@
</span><span class="cx">     return String();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-String AccessibilityRenderObject::textUnderElement() const
</del><ins>+String AccessibilityRenderObject::textUnderElement(AccessibilityTextUnderElementMode mode) const
</ins><span class="cx"> {
</span><span class="cx">     if (!m_renderer)
</span><span class="cx">         return String();
</span><span class="lines">@@ -645,23 +645,9 @@
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if PLATFORM(GTK)
-    // On GTK, always use a text iterator in order to get embedded object characters.
-    // TODO: Add support for embedded object characters to the other codepaths that try
-    // to build the accessible text recursively, so this special case isn't needed.
-    // https://bugs.webkit.org/show_bug.cgi?id=105214
-    if (Node* node = this-&gt;node()) {
-        if (Frame* frame = node-&gt;document()-&gt;frame()) {
-            // catch stale WebCoreAXObject (see &lt;rdar://problem/3960196&gt;)
-            if (frame-&gt;document() != node-&gt;document())
-                return String();
-
-            return plainText(rangeOfContents(node).get(), textIteratorBehaviorForTextRange());
-        }
-    }
-#endif
-
-    if (m_renderer-&gt;isText()) {
</del><ins>+    // We use a text iterator for text objects AND for those cases where we are
+    // explicitly asking for the full text under a given element.
+    if (m_renderer-&gt;isText() || mode == TextUnderElementModeIncludeAllChildren) {
</ins><span class="cx">         // If possible, use a text iterator to get the text, so that whitespace
</span><span class="cx">         // is handled consistently.
</span><span class="cx">         if (Node* node = this-&gt;node()) {
</span><span class="lines">@@ -683,7 +669,7 @@
</span><span class="cx">             return String(renderTextObject-&gt;text());
</span><span class="cx">     }
</span><span class="cx">     
</span><del>-    return AccessibilityNodeObject::textUnderElement();
</del><ins>+    return AccessibilityNodeObject::textUnderElement(mode);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Node* AccessibilityRenderObject::node() const
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityAccessibilityRenderObjecth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/AccessibilityRenderObject.h (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/AccessibilityRenderObject.h        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/AccessibilityRenderObject.h        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -144,7 +144,7 @@
</span><span class="cx">     virtual VisibleSelection selection() const;
</span><span class="cx">     virtual String stringValue() const;
</span><span class="cx">     virtual String helpText() const;
</span><del>-    virtual String textUnderElement() const;
</del><ins>+    virtual String textUnderElement(AccessibilityTextUnderElementMode = TextUnderElementModeSkipIgnoredChildren) const;
</ins><span class="cx">     virtual String text() const;
</span><span class="cx">     virtual int textLength() const;
</span><span class="cx">     virtual String selectedText() const;
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityatkAccessibilityObjectAtkcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/atk/AccessibilityObjectAtk.cpp (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/atk/AccessibilityObjectAtk.cpp        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/atk/AccessibilityObjectAtk.cpp        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -164,7 +164,7 @@
</span><span class="cx">     // Get the text length from the elements under the
</span><span class="cx">     // accessibility object if the value is still zero.
</span><span class="cx">     if (!textLength &amp;&amp; allowsTextRanges())
</span><del>-        textLength = textUnderElement().length();
</del><ins>+        textLength = textUnderElement(TextUnderElementModeIncludeAllChildren).length();
</ins><span class="cx"> 
</span><span class="cx">     return textLength;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityatkWebKitAccessibleInterfaceTextcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/atk/WebKitAccessibleInterfaceText.cpp (152536 => 152537)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/atk/WebKitAccessibleInterfaceText.cpp        2013-07-10 15:52:47 UTC (rev 152536)
+++ trunk/Source/WebCore/accessibility/atk/WebKitAccessibleInterfaceText.cpp        2013-07-10 16:20:24 UTC (rev 152537)
</span><span class="lines">@@ -535,7 +535,7 @@
</span><span class="cx">     if (endOffset == -1) {
</span><span class="cx">         end = coreObject-&gt;stringValue().length();
</span><span class="cx">         if (!end)
</span><del>-            end = coreObject-&gt;textUnderElement().length();
</del><ins>+            end = coreObject-&gt;textUnderElement(TextUnderElementModeIncludeAllChildren).length();
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     String ret;
</span><span class="lines">@@ -544,7 +544,7 @@
</span><span class="cx">     else {
</span><span class="cx">         ret = coreObject-&gt;stringValue();
</span><span class="cx">         if (!ret)
</span><del>-            ret = coreObject-&gt;textUnderElement();
</del><ins>+            ret = coreObject-&gt;textUnderElement(TextUnderElementModeIncludeAllChildren);
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (!ret.length()) {
</span></span></pre>
</div>
</div>

</body>
</html>