Skip to content

Commit c979f2e

Browse files
Saadnajmipull[bot]ryanlntn
authored
Fix onMouseEnter/onMouseLeave callbacks not firing on Pressable (#855)
* add pull yml * match handleOpenURLNotification event payload with iOS (#755) (#2) Co-authored-by: Ryan Linton <[email protected]> * fix mouse evetns on pressable * delete extra yml from this branch * Add macOS tags * reorder props to have onMouseEnter/onMouseLeave always be before onPress Co-authored-by: pull[bot] <39814207+pull[bot]@users.noreply.github.com> Co-authored-by: Ryan Linton <[email protected]>
1 parent 0cf2b3d commit c979f2e

File tree

3 files changed

+37
-29
lines changed

3 files changed

+37
-29
lines changed

Libraries/Components/Pressable/Pressable.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,8 @@ function Pressable(props: Props, forwardedRef): React.Node {
170170
delayLongPress,
171171
disabled,
172172
focusable,
173+
onMouseEnter, // [TODO(macOS GH#774)
174+
onMouseLeave, // ]TODO(macOS GH#774)
173175
onLongPress,
174176
onPress,
175177
onPressIn,
@@ -208,6 +210,8 @@ function Pressable(props: Props, forwardedRef): React.Node {
208210
android_disableSound,
209211
delayLongPress,
210212
delayPressIn: unstable_pressDelay,
213+
onHoverIn: onMouseEnter, // [TODO(macOS GH#774)
214+
onHoverOut: onMouseLeave, // ]TODO(macOS GH#774)
211215
onLongPress,
212216
onPress,
213217
onPressIn(event: PressEvent): void {
@@ -236,6 +240,8 @@ function Pressable(props: Props, forwardedRef): React.Node {
236240
delayLongPress,
237241
disabled,
238242
hitSlop,
243+
onMouseEnter, // [TODO(macOS GH#774)
244+
onMouseLeave, // ]TODO(macOS GH#774)
239245
onLongPress,
240246
onPress,
241247
onPressIn,

packages/rn-tester/Podfile.lock

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -510,8 +510,8 @@ SPEC CHECKSUMS:
510510
CocoaAsyncSocket: 694058e7c0ed05a9e217d1b3c7ded962f4180845
511511
CocoaLibEvent: 2fab71b8bd46dd33ddb959f7928ec5909f838e3f
512512
DoubleConversion: 0ea4559a49682230337df966e735d6cc7760108e
513-
FBLazyVector: f3a2bccaa26e739c3ef011f4ca86c3ca5427eee6
514-
FBReactNativeSpec: 284873b891962e396668ece89aa3290221b560f6
513+
FBLazyVector: 3e1c4c346ec478750c07d0f1d89b424d96cac528
514+
FBReactNativeSpec: 49208bf2f791afd2253440847299776bdcdbc96f
515515
Flipper: be611d4b742d8c87fbae2ca5f44603a02539e365
516516
Flipper-DoubleConversion: 38631e41ef4f9b12861c67d17cb5518d06badc41
517517
Flipper-Folly: c12092ea368353b58e992843a990a3225d4533c3
@@ -522,35 +522,35 @@ SPEC CHECKSUMS:
522522
glog: 0dc7efada961c0793012970b60faebbd58b0decb
523523
OpenSSL-Universal: 8b48cc0d10c1b2923617dfe5c178aa9ed2689355
524524
RCT-Folly: 2f2111690f1e23490285c059ca53be22fe6d6bee
525-
RCTRequired: 892b1fc61efc4f66a92b9c6ca85e2522e051f0e2
526-
RCTTypeSafety: 94bdbb3ebfd2fcc54174c5eb66486cbfac50fe60
527-
React: c6d1cfc7cb81cde55e07be8c1411fcdb14161562
528-
React-callinvoker: 577cf455f9e762be4e2b03e03fc0b267a2cff771
529-
React-Core: d8c133ae796db1854204a1f260ef6e3837f1285c
530-
React-CoreModules: 23672f86dd25805b0a9096692b139e26116c1980
531-
React-cxxreact: 1f21c1a08237692657816d8092f3d1dc6f13fb41
532-
React-jsi: e42a0922ac3286bbfc1840aebba8e41fdfcc98d7
533-
React-jsiexecutor: 161f172db05ec4ae77be65940206ba29930355a4
534-
React-jsinspector: 680bd24100071d26698fef4e9c75cf69db027954
535-
React-perflogger: 3a28a552bc5c0be0e8cdcf9f2977aea59eba7380
536-
React-RCTActionSheet: 06144b4bb931c8f217afba1cd620a682cce980fa
537-
React-RCTAnimation: 8b89532952beb474e0d2b3fbe1bdb3e107026551
538-
React-RCTBlob: c83099e47b7a9c1aeeb584b8696abc9f78adf3f1
539-
React-RCTImage: 69061c1547f728421a0aa09a2f1147f59c0d873c
540-
React-RCTLinking: 341ac25287553e51b319266245ef03c36169c671
541-
React-RCTNetwork: 1ab7893ac9d21d03da65ac958271405def8fe43a
542-
React-RCTPushNotification: e5353eb3f501048e032cda7f9491105cc70039a0
543-
React-RCTSettings: fa2839bad861f0d44c223938658e9e7782074c55
544-
React-RCTTest: ca048e75c0b296329201ea81b9f14d27ddd41823
545-
React-RCTText: d2c121533280c59313f002e6575118b877dd40fc
546-
React-RCTVibration: c53993ba40851fc666c350da5269556b1c1470a4
547-
React-runtimeexecutor: 87ba843187b8bebb4111c8c54f199cd4785d2ee3
525+
RCTRequired: 6ef1ca4d8dc14cfdd1c37f14eb4137badd10e982
526+
RCTTypeSafety: 903e3df81eaa3809cd3593f10de14c4bdd29f500
527+
React: c49df3a16180bd95f195f359dd2e08555147b95d
528+
React-callinvoker: aec8865b89dbb1cd8d6cbe782badf4d7495682c9
529+
React-Core: 27db1d573718bb6d53fef2f1dc93c1fdb0d5699d
530+
React-CoreModules: 554ae8216e1963fcfc0ba8aa539a69ad0e0e64ab
531+
React-cxxreact: 841ef739ed5009a9a2e034af90fd7c5157a44790
532+
React-jsi: 4b7f4a5733a77130579aa2b2af3c7963ea5f58c0
533+
React-jsiexecutor: 56d0bf876000abf04e757f3cbd6795d257466b6d
534+
React-jsinspector: 6ddd209772e5b066824a030da0e81a949c8bc45b
535+
React-perflogger: 112849bd1692d40371bcb528e6cd37f6e97da42e
536+
React-RCTActionSheet: b2bedbbb047c24e34304e5e6332182c81fbde3c4
537+
React-RCTAnimation: 88a7a4272ba2142484d5310fa7450d2e65e58cea
538+
React-RCTBlob: 19acefd489b5c3493a92c1f5c0e3d9eac8d05e46
539+
React-RCTImage: 723ec9d61d7f68e6be2e28fb7064d29902c534ac
540+
React-RCTLinking: 2d7559d3c705da2474cd9c47351d029600a1f037
541+
React-RCTNetwork: 36c561fb46ebe56891a401fa6559fd6eae1fcf33
542+
React-RCTPushNotification: 993a3510ea377519306a04d69970ebc9867e25e2
543+
React-RCTSettings: f3e5ffe73ea7831d98b2d0a119102d9ba232774c
544+
React-RCTTest: d56fa23c7ae8c29236cfb2cd7389337c81f6455b
545+
React-RCTText: 627606cbb59d72a924eed4257ebae197b0570757
546+
React-RCTVibration: b212ea311c7b325cabd4d780cc337cff23d40f63
547+
React-runtimeexecutor: 04275caf6c4b2128dcbafcfa015def1782d84760
548548
React-TurboModuleCxx-RNW: 12172bdbaaf052406ec571465243fad4b2eb2702
549-
React-TurboModuleCxx-WinRTPort: 32917c4b48bbe4bb20ce172c40c3cd6315354c3e
550-
ReactCommon: f4a3480837fc8e5c73ffc38c057594b3a1ec7a43
551-
Yoga: 9defa6fd4bf71cdbba9b1389adb9deed6255f4b1
549+
React-TurboModuleCxx-WinRTPort: 9fbcbcbfed07bdacde7fde7f85773e705f2a9c1e
550+
ReactCommon: 91962a733289a96984bc8c761b08ed23c0fbe5f8
551+
Yoga: 9cd54ce33d6f399a07a78172b0c8d7b89a9fc2c5
552552
YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
553553

554554
PODFILE CHECKSUM: cb260f8f7765c910b68f8267cbd74709f6ae6e54
555555

556-
COCOAPODS: 1.10.1
556+
COCOAPODS: 1.11.0

packages/rn-tester/js/examples/Pressable/PressableExample.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,8 @@ function PressableFeedbackEvents() {
9999
testID="pressable_feedback_events_button"
100100
accessibilityLabel="pressable feedback events"
101101
accessibilityRole="button"
102+
onMouseEnter={() => appendEvent('mouseEnter')} // [TODO(macOS GH#774)
103+
onMouseLeave={() => appendEvent('mouseLeave')} // ]TODO(macOS GH#774)
102104
onPress={() => appendEvent('press')}
103105
onPressIn={() => appendEvent('pressIn')}
104106
onPressOut={() => appendEvent('pressOut')}

0 commit comments

Comments
 (0)