diff --git a/apps/mobile/src/components/ui/Sheet.android.tsx b/apps/mobile/src/components/ui/Sheet.android.tsx index 08f8b8ad9a4a6..ac222485cf056 100644 --- a/apps/mobile/src/components/ui/Sheet.android.tsx +++ b/apps/mobile/src/components/ui/Sheet.android.tsx @@ -3,25 +3,30 @@ import { View } from "react-native"; import { FormSheet } from "react-native-screens"; import { useResolveClassNames } from "uniwind"; import { AndroidSheetHeader } from "./AndroidScreenHeader"; +import { ScreenContent } from "./ScreenContent"; import type { SheetProps } from "./Sheet.types"; export type { SheetProps } from "./Sheet.types"; export function Sheet(props: SheetProps) { - const containerStyle = useResolveClassNames("bg-sheet"); + const containerStyle = useResolveClassNames("bg-header"); const [isOpen, setIsOpen] = useState(true); return ( {/* Android FormSheet does not bound flex children. Material drags target the first scroll view, so place content before the header. */} - - {props.children} - setIsOpen(false)} /> + + {props.children} + setIsOpen(false)} hideBottomBorder /> + ); diff --git a/apps/mobile/src/features/settings/SettingsFollowUpRouteScreen.tsx b/apps/mobile/src/features/settings/SettingsFollowUpRouteScreen.tsx index a86ec0c6d354a..f7e1680159c02 100644 --- a/apps/mobile/src/features/settings/SettingsFollowUpRouteScreen.tsx +++ b/apps/mobile/src/features/settings/SettingsFollowUpRouteScreen.tsx @@ -1,17 +1,15 @@ import { ScreenScrollView as ScrollView } from "../../components/ui/ScreenScrollView"; import { useAtomSet, useAtomValue } from "@effect/atom-react"; -import { useNavigation } from "@react-navigation/native"; import { AsyncResult } from "effect/reactivity"; import { Platform, View } from "react-native"; import { useSafeAreaInsets } from "react-native-safe-area-context"; -import { AndroidScreenHeader } from "../../components/ui/AndroidScreenHeader"; import { AppText as Text } from "../../components/ui/AppText"; -import { NativeStackScreenOptions } from "../../native/StackHeader"; import { DEFAULT_FOLLOW_UP_BEHAVIOR, type FollowUpBehavior } from "../../lib/followUpBehavior"; import { mobilePreferencesAtom, updateMobilePreferencesAtom } from "../../state/preferences"; import { SettingsChoiceRow } from "./components/SettingsChoiceRow"; import { SettingsSection } from "./components/SettingsSection"; +import { SettingsScreen } from "./components/SettingsScreen"; const FOLLOW_UP_OPTIONS: ReadonlyArray<{ readonly behavior: FollowUpBehavior; @@ -31,7 +29,6 @@ const FOLLOW_UP_OPTIONS: ReadonlyArray<{ ]; export function SettingsFollowUpRouteScreen() { - const navigation = useNavigation(); const insets = useSafeAreaInsets(); const preferencesResult = useAtomValue(mobilePreferencesAtom); const savePreferences = useAtomSet(updateMobilePreferencesAtom); @@ -40,39 +37,39 @@ export function SettingsFollowUpRouteScreen() { ? (preferencesResult.value.followUpBehavior ?? DEFAULT_FOLLOW_UP_BEHAVIOR) : null; - return ( + const content = ( + + + {FOLLOW_UP_OPTIONS.map((option, index) => ( + 0} + disabled={!preferencesReady} + onPress={() => savePreferences({ followUpBehavior: option.behavior })} + /> + ))} + + + Long-press the send button to use the other option for a single message. With a hardware + keyboard, hold Command while sending. + + + ); + + return Platform.OS === "android" ? ( + {content} + ) : ( - {Platform.OS === "android" ? ( - <> - - navigation.goBack()} /> - - ) : null} - - - {FOLLOW_UP_OPTIONS.map((option, index) => ( - 0} - disabled={!preferencesReady} - onPress={() => savePreferences({ followUpBehavior: option.behavior })} - /> - ))} - - - Long-press the send button to use the other option for a single message. With a hardware - keyboard, hold Command while sending. - - + {content} ); }