RESOLVED FIXED 270499
AX: NULL attributed string returned for text markers that contain unconnected nodes
https://bugs.webkit.org/show_bug.cgi?id=270499
Summary AX: NULL attributed string returned for text markers that contain unconnected...
Joshua Hoffman
Reported 2024-03-04 19:19:49 PST
rdar://122451549 The changes to move AXSelectedTextMarkerRange off of the main thread resulted in an issue where unconnected nodes (for example, the static text of an <input type=text>) were not having their values updated with the input field. This means that when the selected text range of that input is queried, and it references the unconnected node, we return a null string since it is not up-to-date.
Attachments
Patch (9.37 KB, patch)
2024-03-04 19:34 PST, Joshua Hoffman
no flags
Patch (9.28 KB, patch)
2024-03-04 22:32 PST, Joshua Hoffman
no flags
Joshua Hoffman
Comment 1 2024-03-04 19:22:34 PST
Joshua Hoffman
Comment 2 2024-03-04 19:34:41 PST
Tyler Wilcock
Comment 3 2024-03-04 19:55:12 PST
Comment on attachment 470172 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=470172&action=review > LayoutTests/accessibility/mac/selected-text-range-unconnected-object.html:6 > +<input type="text" id="input1" value="Hello"> Can this just be id="input"? IMO, "input1" implies there's an input2 / input3 / etc. > LayoutTests/accessibility/mac/selected-text-range-unconnected-object.html:16 > + let startMarker = root.startTextMarkerForTextMarkerRange(textMarkerRange); > + let endMarker = root.endTextMarkerForTextMarkerRange(textMarkerRange); > + > + let startElement = root.accessibilityElementForTextMarker(startMarker); > + let endElement = root.accessibilityElementForTextMarker(endMarker); Can these be const?
Joshua Hoffman
Comment 4 2024-03-04 20:38:53 PST
(In reply to Tyler Wilcock from comment #3) > Comment on attachment 470172 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=470172&action=review > > > LayoutTests/accessibility/mac/selected-text-range-unconnected-object.html:6 > > +<input type="text" id="input1" value="Hello"> > > Can this just be id="input"? IMO, "input1" implies there's an input2 / > input3 / etc. > > > LayoutTests/accessibility/mac/selected-text-range-unconnected-object.html:16 > > + let startMarker = root.startTextMarkerForTextMarkerRange(textMarkerRange); > > + let endMarker = root.endTextMarkerForTextMarkerRange(textMarkerRange); > > + > > + let startElement = root.accessibilityElementForTextMarker(startMarker); > > + let endElement = root.accessibilityElementForTextMarker(endMarker); > > Can these be const? Yes! I'll address both of these comments when I re-upload.
Joshua Hoffman
Comment 5 2024-03-04 22:32:09 PST
Alexey Proskuryakov
Comment 6 2024-03-05 08:48:17 PST
*** Bug 270498 has been marked as a duplicate of this bug. ***
EWS
Comment 7 2024-03-05 08:50:57 PST
Committed 275694@main (a8f281f89e75): <https://commits.webkit.org/275694@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 470176 [details].
Note You need to log in before you can comment on or make changes to this bug.