Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(405)

Unified Diff: third_party/WebKit/Source/core/input/EventHandler.cpp

Issue 2784313002: Change hittest node to be scrollbar's parent when hittest include a scrollbar (Closed)
Patch Set: mustaq comments addressed Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/input/EventHandler.cpp
diff --git a/third_party/WebKit/Source/core/input/EventHandler.cpp b/third_party/WebKit/Source/core/input/EventHandler.cpp
index 886d2b746bfb65380e99834f6ee68a1553f47d27..04a9e59ab897a410fd1e9b8242982f2741754e3a 100644
--- a/third_party/WebKit/Source/core/input/EventHandler.cpp
+++ b/third_party/WebKit/Source/core/input/EventHandler.cpp
@@ -278,10 +278,8 @@ HitTestResult EventHandler::hitTestResultAtPoint(
return result;
m_frame->contentLayoutItem().hitTest(result);
- if (!request.readOnly()) {
- m_frame->document()->updateHoverActiveState(request, result.innerElement(),
- result.scrollbar());
- }
+ if (!request.readOnly())
+ m_frame->document()->updateHoverActiveState(request, result.innerElement());
return result;
}
@@ -826,7 +824,7 @@ WebInputEventResult EventHandler::handleMouseMoveOrLeaveEvent(
// So we must force the hit-test to fail, while still clearing hover/active
// state.
if (forceLeave) {
- m_frame->document()->updateHoverActiveState(request, nullptr, nullptr);
+ m_frame->document()->updateHoverActiveState(request, nullptr);
} else {
mev = EventHandlingUtil::performMouseEventHitTest(m_frame, request,
mouseEvent);
@@ -1503,13 +1501,13 @@ void EventHandler::updateGestureHoverActiveState(const HitTestRequest& request,
// If the old hovered frame is different from the new hovered frame.
// we should clear the old hovered node from the old hovered frame.
if (newHoverFrame != oldHoverFrame)
- doc->updateHoverActiveState(request, nullptr, nullptr);
+ doc->updateHoverActiveState(request, nullptr);
}
}
// Recursively set the new active/hover states on every frame in the chain of
// innerElement.
- m_frame->document()->updateHoverActiveState(request, innerElement, nullptr);
+ m_frame->document()->updateHoverActiveState(request, innerElement);
}
// Update the mouseover/mouseenter/mouseout/mouseleave events across all frames
@@ -1842,8 +1840,7 @@ WebInputEventResult EventHandler::sendContextMenuEventForKey(
HitTestRequest request(HitTestRequest::Active);
HitTestResult result(request, locationInRootFrame);
result.setInnerNode(targetNode);
- doc->updateHoverActiveState(request, result.innerElement(),
- result.scrollbar());
+ doc->updateHoverActiveState(request, result.innerElement());
// The contextmenu event is a mouse event even when invoked using the
// keyboard. This is required for web compatibility.
@@ -1915,8 +1912,8 @@ void EventHandler::hoverTimerFired(TimerBase*) {
view->rootFrameToContents(
m_mouseEventManager->lastKnownMousePosition()));
layoutItem.hitTest(result);
- m_frame->document()->updateHoverActiveState(
- request, result.innerElement(), result.scrollbar());
+ m_frame->document()->updateHoverActiveState(request,
+ result.innerElement());
}
}
}
@@ -1929,8 +1926,8 @@ void EventHandler::activeIntervalTimerFired(TimerBase*) {
// m_lastDeferredTapElement.get() == m_frame->document()->activeElement()
HitTestRequest request(HitTestRequest::TouchEvent |
HitTestRequest::Release);
- m_frame->document()->updateHoverActiveState(
- request, m_lastDeferredTapElement.get(), nullptr);
+ m_frame->document()->updateHoverActiveState(request,
+ m_lastDeferredTapElement.get());
}
m_lastDeferredTapElement = nullptr;
}
« no previous file with comments | « third_party/WebKit/Source/core/dom/Document.cpp ('k') | third_party/WebKit/Source/core/layout/HitTestResult.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698