Merge to M81: Computes the correct ancestor position when a leaf position is within an embedded object

On platforms that support embedded object characters, such as IA2 and ATK, we were not
computing the correct ancestor position when trying to compare two leaf text positions.
If the leaf text position is within an embedded object, we need to adjust the ancestor position
to point to after the embedded object character, if the leaf position is not at the start of the embedded object.
This is per the IA2 Spec.
Test steps are in the attached bug.

R=dmazzoni@chromium.org, kbabbitt@microsoft.com
TBR=nektar@chromium.org

(cherry picked from commit f37ba14ae0f0f7835402613497642f0c00d6e4e2)

Bug: 1057831
Change-Id: Iabc44586ae35c4bb927655707366bf3b81b79fc9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2081527
Commit-Queue: Nektarios Paisios <nektar@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Kevin Babbitt <kbabbitt@microsoft.com>
Auto-Submit: Nektarios Paisios <nektar@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#748023}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2119762
Reviewed-by: Nektarios Paisios <nektar@chromium.org>
Cr-Commit-Position: refs/branch-heads/4044@{#852}
Cr-Branched-From: a6d9daf149a473ceea37f629c41d4527bf2055bd-refs/heads/master@{#737173}
4 files changed