Index: Source/core/editing/commands/EditCommand.cpp |
diff --git a/Source/core/editing/commands/EditCommand.cpp b/Source/core/editing/commands/EditCommand.cpp |
index 8cae2268635d69aa1749599670fe86aea735c48b..937170a0547244163676f7add23aad53ef6ad805 100644 |
--- a/Source/core/editing/commands/EditCommand.cpp |
+++ b/Source/core/editing/commands/EditCommand.cpp |
@@ -31,6 +31,7 @@ |
#include "core/editing/FrameSelection.h" |
#include "core/editing/commands/CompositeEditCommand.h" |
#include "core/frame/LocalFrame.h" |
+#include "core/layout/LayoutText.h" |
namespace blink { |
@@ -89,6 +90,21 @@ void EditCommand::setEndingSelection(const VisiblePosition& position) |
setEndingSelection(VisibleSelection(position)); |
} |
+bool EditCommand::isRenderedCharacter(const Position& position) |
+{ |
+ if (position.isNull()) |
+ return false; |
+ ASSERT(position.isOffsetInAnchor()); |
+ if (!position.anchorNode()->isTextNode()) |
+ return false; |
+ |
+ LayoutObject* layoutObject = position.anchorNode()->layoutObject(); |
+ if (!layoutObject) |
+ return false; |
+ |
+ return toLayoutText(layoutObject)->isRenderedCharacter(position.offsetInContainerNode()); |
+} |
+ |
void EditCommand::setParent(CompositeEditCommand* parent) |
{ |
ASSERT((parent && !m_parent) || (!parent && m_parent)); |