@@ -7,7 +7,7 @@ import isValidHttpUrl from "@lib/utils/isValidHttpUrl";
77import { lazyDestructure } from "@lib/utils/lazy" ;
88import { findByProps } from "@metro" ;
99import { clipboard } from "@metro/common" ;
10- import { Button , FlashList , FloatingActionButton , HelpMessage , IconButton , Stack , Text , TextInput } from "@metro/common/components" ;
10+ import { Button , FlashList , FloatingActionButton , HelpMessage , IconButton , Stack , Text , TextInput , useSafeAreaInsets } from "@metro/common/components" ;
1111import { ErrorBoundary , Search } from "@ui/components" ;
1212import fuzzysort from "fuzzysort" ;
1313import { ComponentType , ReactNode , useCallback , useMemo } from "react" ;
@@ -111,6 +111,7 @@ export default function AddonPage<T extends object>({ CardComponent, ...props }:
111111
112112 const [ search , setSearch ] = React . useState ( "" ) ;
113113 const [ sortFn , setSortFn ] = React . useState < ( ( a : unknown , b : unknown ) => number ) | null > ( ( ) => null ) ;
114+ const { bottom : bottomInset } = useSafeAreaInsets ( ) ;
114115
115116 const results = useMemo ( ( ) => {
116117 let values = props . items ;
@@ -198,6 +199,7 @@ export default function AddonPage<T extends object>({ CardComponent, ...props }:
198199 renderItem = { ( { item } : any ) => < CardComponent item = { item . obj } result = { item } /> }
199200 />
200201 { props . installAction && < FloatingActionButton
202+ positionBottom = { bottomInset + 8 }
201203 icon = { findAssetId ( "PlusLargeIcon" ) }
202204 onPress = { onInstallPress }
203205 /> }
0 commit comments