@@ -29,19 +29,19 @@ if (typeof window !== 'undefined' && window.PointerEvent === undefined) {
29
29
targetEventTypes . push ( 'touchstart' , 'mouseover' , 'mouseout' ) ;
30
30
}
31
31
32
- function dispatchHoverInEvents (
32
+ function dispatchHoverStartEvents (
33
33
context : EventResponderContext ,
34
34
props : Object ,
35
35
state : HoverState ,
36
36
) : void {
37
37
const { event, eventTarget} = context ;
38
+ if ( context . isTargetWithinEventComponent ( ( event : any ) . relatedTarget ) ) {
39
+ return ;
40
+ }
41
+ if ( props . onHoverStart ) {
42
+ context . dispatchEvent ( 'hoverstart' , props . onHoverStart , eventTarget , true ) ;
43
+ }
38
44
if ( props . onHoverChange ) {
39
- if ( context . isTargetWithinEventComponent ( ( event : any ) . relatedTarget ) ) {
40
- return ;
41
- }
42
- if ( props . onHoverIn ) {
43
- context . dispatchEvent ( 'hoverin' , props . onHoverIn , eventTarget , true ) ;
44
- }
45
45
const hoverChangeEventListener = ( ) => {
46
46
props . onHoverChange ( true ) ;
47
47
} ;
@@ -54,13 +54,13 @@ function dispatchHoverInEvents(
54
54
}
55
55
}
56
56
57
- function dispatchHoverOutEvents ( context : EventResponderContext , props : Object ) {
57
+ function dispatchHoverEndEvents ( context : EventResponderContext , props : Object ) {
58
58
const { event, eventTarget} = context ;
59
59
if ( context . isTargetWithinEventComponent ( ( event : any ) . relatedTarget ) ) {
60
60
return ;
61
61
}
62
- if ( props . onHoverOut ) {
63
- context . dispatchEvent ( 'hoverout ' , props . onHoverOut , eventTarget , true ) ;
62
+ if ( props . onHoverEnd ) {
63
+ context . dispatchEvent ( 'hoverend ' , props . onHoverEnd , eventTarget , true ) ;
64
64
}
65
65
if ( props . onHoverChange ) {
66
66
const hoverChangeEventListener = ( ) => {
@@ -118,15 +118,15 @@ const HoverResponder = {
118
118
state . isInHitSlop = true ;
119
119
return ;
120
120
}
121
- dispatchHoverInEvents ( context , props , state ) ;
121
+ dispatchHoverStartEvents ( context , props , state ) ;
122
122
state . isHovered = true ;
123
123
}
124
124
break ;
125
125
}
126
126
case 'pointerout' :
127
127
case 'mouseout' : {
128
128
if ( state . isHovered && ! state . isTouched ) {
129
- dispatchHoverOutEvents ( context , props ) ;
129
+ dispatchHoverEndEvents ( context , props ) ;
130
130
state . isHovered = false ;
131
131
}
132
132
state . isInHitSlop = false ;
@@ -142,7 +142,7 @@ const HoverResponder = {
142
142
( event : any ) . y ,
143
143
)
144
144
) {
145
- dispatchHoverInEvents ( context , props , state ) ;
145
+ dispatchHoverStartEvents ( context , props , state ) ;
146
146
state . isHovered = true ;
147
147
state . isInHitSlop = false ;
148
148
}
@@ -153,7 +153,7 @@ const HoverResponder = {
153
153
( event : any ) . y ,
154
154
)
155
155
) {
156
- dispatchHoverOutEvents ( context , props ) ;
156
+ dispatchHoverEndEvents ( context , props ) ;
157
157
state . isHovered = false ;
158
158
state . isInHitSlop = true ;
159
159
}
@@ -162,7 +162,7 @@ const HoverResponder = {
162
162
}
163
163
case 'pointercancel' : {
164
164
if ( state . isHovered && ! state . isTouched ) {
165
- dispatchHoverOutEvents ( context , props ) ;
165
+ dispatchHoverEndEvents ( context , props ) ;
166
166
state . isHovered = false ;
167
167
state . isTouched = false ;
168
168
}
0 commit comments