Index: Source/core/page/FocusController.cpp |
diff --git a/Source/core/page/FocusController.cpp b/Source/core/page/FocusController.cpp |
index c8f4a75056a9cf6df2eb42042e18e2a32750d25b..aa083b5815785588fb729980527d7ca5f403bc01 100644 |
--- a/Source/core/page/FocusController.cpp |
+++ b/Source/core/page/FocusController.cpp |
@@ -755,7 +755,8 @@ static void updateFocusCandidateIfNeeded(FocusType type, const FocusCandidate& c |
} |
LayoutRect intersectionRect = intersection(candidate.rect, closest.rect); |
- if (!intersectionRect.isEmpty() && !areElementsOnSameLine(closest, candidate)) { |
+ if (!intersectionRect.isEmpty() && !areElementsOnSameLine(closest, candidate) |
+ && intersectionRect == candidate.rect) { |
// If 2 nodes are intersecting, do hit test to find which node in on top. |
LayoutUnit x = intersectionRect.x() + intersectionRect.width() / 2; |
LayoutUnit y = intersectionRect.y() + intersectionRect.height() / 2; |