[Webkit-unassigned] [Bug 154366] AX: AXObjectCache::visiblePositionForTextMarkerData() doesn't account for equivalent visibly equivalent positions

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Feb 17 19:41:53 PST 2016


https://bugs.webkit.org/show_bug.cgi?id=154366

--- Comment #7 from Doug Russell <d_russell at apple.com> ---
(In reply to comment #6)
> Comment on attachment 271611 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=271611&action=review
> 
> > Source/WebCore/accessibility/AXObjectCache.cpp:1416
> > +    Position deepEquivalent = visiblePosition.deepEquivalent();
> > +    bool equivalent = deepEquivalent.deprecatedNode() == textMarkerData.node && deepEquivalent.deprecatedEditingOffset() == textMarkerData.offset;
> > +    if (!equivalent && visiblePosition.affinity() != textMarkerData.affinity) {
> > +        Position position;
> > +        if (textMarkerData.affinity == UPSTREAM)
> > +            position = deepEquivalent.upstream();
> > +        else
> > +            position = deepEquivalent.downstream();
> > +        if (position.deprecatedNode() == textMarkerData.node && position.deprecatedEditingOffset() == textMarkerData.offset)
> > +            equivalent = true;
> > +    }
> > +    return equivalent;
> 
> Instead of manually adjusting the visible position's deep equivalent, you
> should just create a new VisiblePosition out of textMarkerData and check
> whether they match or not.
> 
> By the way, '&' should be directly adjacent to type in C++ code:
> https://webkit.org/code-style-guidelines/#pointers-and-references

The VisiblePosition I have was created from the TextMarkerData so it would always match. I was considering making VisiblePosition::canonicalPosition() a public static method instead of this manual adjustment. What do you think of that?

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160218/f4e86b33/attachment.html>


More information about the webkit-unassigned mailing list