From 7c66c82fb2f10a28ae592a90b7da90ad65ef534f Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Sun, 1 Nov 2026 14:50:31 +0200 Subject: [PATCH] fix(mobile): sent messages rise into place instead of dropping in Reanimated names entering presets after the side they start from, so FadeInUp starts at translateY -25 and moves down. A message sent from the composer at the bottom therefore dropped in from above. FadeInDown starts at +25 and moves up, matching the composer-adjacent elements in ThreadDetailScreen. Add FadeInDown to the reanimated mock in filePreview.test.ts, which renders ThreadFeed. Co-Authored-By: Claude Sonnet 5.5 --- apps/mobile/src/features/threads/ThreadFeed.tsx | 4 ++-- apps/mobile/src/lib/filePreview.test.ts | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/mobile/src/features/threads/ThreadFeed.tsx b/apps/mobile/src/features/threads/ThreadFeed.tsx index fb4fd3fe1123e..b43e246fc9c4f 100644 --- a/apps/mobile/src/features/threads/ThreadFeed.tsx +++ b/apps/mobile/src/features/threads/ThreadFeed.tsx @@ -141,7 +141,7 @@ import { flattenThemeColor } from "../../lib/mobileTheme"; import { PresentationSource } from "../../components/ui/NativePresentation"; import { NativeScrollViewMarker } from "../../native/NativeScrollViewMarker"; import { useSafeAreaInsets } from "react-native-safe-area-context"; -import Animated, { FadeIn, FadeInUp, type SharedValue } from "react-native-reanimated"; +import Animated, { FadeIn, FadeInDown, type SharedValue } from "react-native-reanimated"; import { useUniwindTheme } from "../../lib/useUniwindTheme"; import { IOS_NAV_BAR_HEIGHT } from "../../lib/layoutMetrics"; import { FONT_FAMILIES } from "../../lib/fontFamilies"; @@ -1983,7 +1983,7 @@ function renderFeedEntry( return ( {presentation.attribution === "t3code" ? ( diff --git a/apps/mobile/src/lib/filePreview.test.ts b/apps/mobile/src/lib/filePreview.test.ts index 97a5051577026..0363f6862448f 100644 --- a/apps/mobile/src/lib/filePreview.test.ts +++ b/apps/mobile/src/lib/filePreview.test.ts @@ -214,6 +214,7 @@ vi.mock("react-native-reanimated", () => { return { default: { View: ({ children }: { children?: ReactNode }) => children }, FadeIn: transition, + FadeInDown: transition, FadeInUp: transition, }; });