|
Implement 'mouseenter' and 'mouseleave' from DOM Level 3 Events.
This patch adds 'mouseenter' and 'mouseleave' as accepted event names in
a variety of places, and does the core of the implementation inside
Document::updateHoverActiveState. Since we're already doing all the
testing there to determine hover state (which 'mouseenter'/'mouseleave'
closely mirrors), that method now accepts a PlatformMouseEvent*
parameter, using it to directly dispatch the new events on relevant
nodes.
A bit of logic has also been added to that method to ensure that we only
generate events when an event handler is listening for them, as
performance is otherwise slightly less than awesome. This optimization
requires the addition of an EventTarget method to determine if capturing
event listeners exist (which requires the addition of an
EventListenerMap method to do the dirty work).
This patch is a lightly modified version of the mouseenter/mouseleave
WebKit patch[1] submitted by allan.jensen@digia.com (carewolf), reviewed
by David Hyatt.
[1]: http://trac.webkit.org/changeset/149173
BUG= 236215
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=153877
Total comments: 9
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+570 lines, -12 lines) |
Patch |
|
A |
LayoutTests/fast/events/mouseenter-mouseleave.html
|
View
|
1
|
1 chunk |
+95 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-capture.html
|
View
|
1
|
1 chunk |
+82 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-capture-expected.txt
|
View
|
1
|
1 chunk |
+17 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-chained-listeners.html
|
View
|
1
|
1 chunk |
+78 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-chained-listeners-expected.txt
|
View
|
1
|
1 chunk |
+17 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-expected.txt
|
View
|
1
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-inline-attributes.html
|
View
|
1
2
|
1 chunk |
+84 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/events/mouseenter-mouseleave-inline-attributes-expected.txt
|
View
|
1
2
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/bindings/scripts/CodeGeneratorV8.pm
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Document.h
|
View
|
1
2
|
2 chunks |
+3 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/dom/Document.cpp
|
View
|
1
2
|
4 chunks |
+37 lines, -5 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Document.idl
|
View
|
1
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Element.h
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Element.idl
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/EventListenerMap.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/EventListenerMap.cpp
|
View
|
|
1 chunk |
+14 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/EventNames.h
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/EventTarget.h
|
View
|
|
2 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/MouseEvent.cpp
|
View
|
|
2 chunks |
+8 lines, -6 lines |
0 comments
|
Download
|
|
M |
Source/core/html/HTMLAttributeNames.in
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/html/HTMLElement.cpp
|
View
|
1
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/page/DOMWindow.h
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/page/Window.idl
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGElement.cpp
|
View
|
1
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGElementInstance.h
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGElementInstance.cpp
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGElementInstance.idl
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
Total messages: 12 (0 generated)
|