Index: Source/core/page/EventHandler.cpp |
diff --git a/Source/core/page/EventHandler.cpp b/Source/core/page/EventHandler.cpp |
index 4b9231174d7b7ebc0e43b34aa7031c4d90ccc64d..eb8c4096b9a2b7da382e30692b708a31915aef38 100644 |
--- a/Source/core/page/EventHandler.cpp |
+++ b/Source/core/page/EventHandler.cpp |
@@ -2067,7 +2067,7 @@ bool EventHandler::dispatchMouseEvent(const AtomicString& eventType, Node* targe |
// if the page already set it (e.g., by canceling default behavior). |
if (Page* page = m_frame->page()) { |
if (node && node->isMouseFocusable()) { |
- if (!page->focusController()->setFocusedNode(node, m_frame)) |
+ if (!page->focusController()->setFocusedNode(node, m_frame, FocusDirectionMouse)) |
swallowEvent = true; |
} else if (!node || !node->focused()) { |
if (!page->focusController()->setFocusedNode(0, m_frame)) |
@@ -3068,6 +3068,7 @@ static void handleKeyboardSelectionMovement(FrameSelection* selection, KeyboardE |
switch (focusDirectionForKey(event->keyIdentifier())) { |
case FocusDirectionNone: |
+ case FocusDirectionMouse: |
return; |
case FocusDirectionForward: |
case FocusDirectionBackward: |