diff --git a/native/chat/swipeable-thread.react.js b/native/chat/swipeable-thread.react.js
--- a/native/chat/swipeable-thread.react.js
+++ b/native/chat/swipeable-thread.react.js
@@ -79,16 +79,20 @@
     iconSize,
   ]);
 
-  return (
-    <Swipeable
-      buttonWidth={60}
-      innerRef={swipeable}
-      onSwipeableRightWillOpen={onSwipeableRightWillOpen}
-      rightActions={swipeableActions}
-    >
-      {props.children}
-    </Swipeable>
+  const swipeableThread = React.useMemo(
+    () => (
+      <Swipeable
+        buttonWidth={60}
+        innerRef={swipeable}
+        onSwipeableRightWillOpen={onSwipeableRightWillOpen}
+        rightActions={swipeableActions}
+      >
+        {props.children}
+      </Swipeable>
+    ),
+    [onSwipeableRightWillOpen, props.children, swipeableActions],
   );
+  return swipeableThread;
 }
 
 export default SwipeableThread;