James Teh 57869687c5 Bug 1820069: Fix handling of magic offsets in HyperTextAccessible*::Char/TextBounds. r=morgan
1. HyperTextAccessibleBase::CharBounds didn't have code to support magic offsets (like TEXT_OFFSET_CARET) at all, resulting in a crash.
2. HyperTextAccessibleBase::TextBounds handled the end offset being a magic offset, but not the start offset.
3. HyperTextAccessible::CharBounds assumed it could just add 1 to the start offset to pass to TextBounds, which resulted in returning the rect from the caret to the end of the container, since length (-1) is caret (-2) + 1.

This patch addresses all three of these issues.

Differential Revision: https://phabricator.services.mozilla.com/D171545
2023-03-06 08:58:42 +00:00
..