#5823·NativeBase

Action Sheet Patch

Author: mosestenaiCreated Jul 14, 2025Updated Jul 14, 2025

Hi!

Firstly, thanks for your work on this project!

Today I used patch-package to patch [email protected] for the project I'm working on.

Here is the diff that solved my problem:

diff
diff --git a/node_modules/native-base/src/hooks/useKeyboardDismissable.ts b/node_modules/native-base/src/hooks/useKeyboardDismissable.ts
index f3cfa44..bf73475 100644
--- a/node_modules/native-base/src/hooks/useKeyboardDismissable.ts
+++ b/node_modules/native-base/src/hooks/useKeyboardDismissable.ts
@@ -44,16 +44,16 @@ export const useKeyboardDismissable = ({ enabled, callback }: IParams) => {
 
 export function useBackHandler({ enabled, callback }: IParams) {
   useEffect(() => {
-    let backHandler = () => {
+    if (!enabled) return;
+
+    const subscription = BackHandler.addEventListener('hardwareBackPress', () => {
       callback();
       return true;
+    });
+
+    return () => {
+      subscription?.remove?.(); // ✅ This is the correct way in RN 0.72+
     };
-    if (enabled) {
-      BackHandler.addEventListener('hardwareBackPress', backHandler);
-    } else {
-      BackHandler.removeEventListener('hardwareBackPress', backHandler);
-    }
-    return () =>
-      BackHandler.removeEventListener('hardwareBackPress', backHandler);
   }, [enabled, callback]);
 }
+

This issue body was partially generated by patch-package.