Index: Source/core/editing/VisibleUnits.cpp |
diff --git a/Source/core/editing/VisibleUnits.cpp b/Source/core/editing/VisibleUnits.cpp |
index b9362b681ce198aea1eaac76c0670be0b7f40ae5..67516557705db9e91140a8aafec5a25d7c825a09 100644 |
--- a/Source/core/editing/VisibleUnits.cpp |
+++ b/Source/core/editing/VisibleUnits.cpp |
@@ -2437,6 +2437,16 @@ bool isVisuallyEquivalentCandidate(const PositionInComposedTree& position) |
return isVisuallyEquivalentCandidateAlgorithm<EditingInComposedTreeStrategy>(position); |
} |
+IntRect absoluteCaretBoundsOf(const VisiblePosition& visiblePosition) |
+{ |
+ LayoutObject* layoutObject; |
+ LayoutRect localRect = localCaretRectOfPosition(visiblePosition.toPositionWithAffinity(), layoutObject); |
+ if (localRect.isEmpty() || !layoutObject) |
+ return IntRect(); |
+ |
+ return layoutObject->localToAbsoluteQuad(FloatRect(localRect)).enclosingBoundingBox(); |
+} |
+ |
static VisiblePosition skipToEndOfEditingBoundary(const VisiblePosition& pos, const Position& anchor) |
{ |
if (pos.isNull()) |