# Files changed · PR \#23888 · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/pull/23888/diffs)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

[fix\(mobile\): models stay visible in the picker with Android animations removed](https://git.cafe/pingdotgg/t3code/pull/23888.md)

Version: 5

Head commit: dca2654bbf5f2572867fce174499bf863d891ff0

Base commit: 11adcb0e25a04785f70d01c3f2a858889683007e

Comparison base: 2c8bdf6177159d8fcd12a897d7c9311f6eb93237

Showing up to 20 entries from this revision. If the pull request changes, reopen the first page before continuing.

## apps/mobile/src/features/threads/ThreadSettingsSheet.tsx

Status: modified; +12; −3

```diff
@@ -43,7 +43,12 @@
   type ReactNode,
 } from "react";
 import { Platform, Pressable, RefreshControl, ScrollView, TextInput, View } from "react-native";
-import Animated, { FadeIn, FadeOut, LinearTransition } from "react-native-reanimated";
+import Animated, {
+  FadeIn,
+  FadeOut,
+  LinearTransition,
+  useReducedMotion,
+} from "react-native-reanimated";
 import { useSafeAreaInsets } from "react-native-safe-area-context";
 
 import { SymbolView } from "../../components/ui/AppSymbol";
@@ -954,7 +959,11 @@
       if (error) Dialog.alert("Could not refresh models", error);
     });
   };
+  const [listLoaded, setListLoaded] = useState(false);
+  // With Android's Remove animations on, Reanimated can leave a row at FadeIn's zero
+  // opacity, so rows mounted while scrolling stay invisible but tappable.
+  const reducedMotion = useReducedMotion();
+  const animationsReady = listLoaded && !reducedMotion;
-  const [animationsReady, setAnimationsReady] = useState(false);
   const catalogItems = buildThreadSettingsCatalogItems(session);
   const hasActiveCatalogFilter =
     session.providerFilter !== null || session.searchQuery.trim().length > 0;
@@ -1079,7 +1088,7 @@
           <RefreshControl refreshing={isRefreshingProviders} onRefresh={refreshProviders} />
         ) : undefined
       }
+      onLoad={() => setListLoaded(true)}
-      onLoad={() => setAnimationsReady(true)}
       renderItem={renderCatalogItem}
       showsVerticalScrollIndicator={false}
     />
```
