Index: third_party/WebKit/Source/core/editing/VisibleSelection.cpp |
diff --git a/third_party/WebKit/Source/core/editing/VisibleSelection.cpp b/third_party/WebKit/Source/core/editing/VisibleSelection.cpp |
index 16e1ebd73ce8071fbeea9747e67769126d56093e..7c92aedaa22475018ccdb02c82e6ae8896b64974 100644 |
--- a/third_party/WebKit/Source/core/editing/VisibleSelection.cpp |
+++ b/third_party/WebKit/Source/core/editing/VisibleSelection.cpp |
@@ -535,7 +535,15 @@ void VisibleSelectionTemplate< |
Strategy>::adjustSelectionToAvoidCrossingShadowBoundaries() { |
if (m_base.isNull() || m_start.isNull() || m_base.isNull()) |
return; |
- SelectionAdjuster::adjustSelectionToAvoidCrossingShadowBoundaries(this); |
+ std::pair<AdjustDirection, PositionTemplate<Strategy>> adjustment = |
+ adjustmentToAvoidCrossingShadowBoundaries(*this); |
+ if (adjustment.first == AdjustDirection::kAdjustNone) |
+ return; |
+ if (adjustment.first == AdjustDirection::kAdjustStart) |
+ m_start = adjustment.second; |
+ else |
+ m_end = adjustment.second; |
+ m_extent = adjustment.second; |
} |
static Element* lowestEditableAncestor(Node* node) { |