Index: Source/core/page/FocusController.cpp |
diff --git a/Source/core/page/FocusController.cpp b/Source/core/page/FocusController.cpp |
index be1d745fb6311e48401069eccf40756d374e5fff..d9d382fec88b631f5b40adc22e8ac1672624748f 100644 |
--- a/Source/core/page/FocusController.cpp |
+++ b/Source/core/page/FocusController.cpp |
@@ -744,7 +744,8 @@ static void updateFocusCandidateIfNeeded(FocusDirection direction, const FocusCa |
} |
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; |