Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(817)

Unified Diff: Source/core/editing/VisibleUnits.cpp

Issue 1317503002: Introduce composed tree version of localCaretRectOfPosition() (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: 2015-08-25T18:30:53 Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/editing/VisibleUnits.cpp
diff --git a/Source/core/editing/VisibleUnits.cpp b/Source/core/editing/VisibleUnits.cpp
index 80cdc9c240d8dfcca6d1597775a465481da287b8..ac85bc85817d472d232489ab36a93d834adb3bcb 100644
--- a/Source/core/editing/VisibleUnits.cpp
+++ b/Source/core/editing/VisibleUnits.cpp
@@ -1713,7 +1713,8 @@ InlineBoxPosition computeInlineBoxPosition(const PositionInComposedTree& positio
return computeInlineBoxPositionAlgorithm<EditingInComposedTreeStrategy>(position, affinity, primaryDirection);
}
-LayoutRect localCaretRectOfPosition(const PositionWithAffinity& position, LayoutObject*& layoutObject)
+template <typename Strategy>
+LayoutRect localCaretRectOfPositionAlgorithm(const PositionWithAffinityTemplate<Strategy>& position, LayoutObject*& layoutObject)
{
if (position.position().isNull()) {
layoutObject = nullptr;
@@ -1733,6 +1734,16 @@ LayoutRect localCaretRectOfPosition(const PositionWithAffinity& position, Layout
return layoutObject->localCaretRect(boxPosition.inlineBox, boxPosition.offsetInBox);
}
+LayoutRect localCaretRectOfPosition(const PositionWithAffinity& position, LayoutObject*& layoutObject)
+{
+ return localCaretRectOfPositionAlgorithm<EditingStrategy>(position, layoutObject);
+}
+
+LayoutRect localCaretRectOfPosition(const PositionInComposedTreeWithAffinity& position, LayoutObject*& layoutObject)
+{
+ return localCaretRectOfPositionAlgorithm<EditingInComposedTreeStrategy>(position, layoutObject);
+}
+
static int boundingBoxLogicalHeight(LayoutObject *o, const IntRect &rect)
{
return o->style()->isHorizontalWritingMode() ? rect.height() : rect.width();

Powered by Google App Engine
This is Rietveld 408576698