diff options
Diffstat (limited to 'src/screens/Profile/Sections/Labels.tsx')
-rw-r--r-- | src/screens/Profile/Sections/Labels.tsx | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/screens/Profile/Sections/Labels.tsx b/src/screens/Profile/Sections/Labels.tsx index 5ba8f00a5..f43e3633d 100644 --- a/src/screens/Profile/Sections/Labels.tsx +++ b/src/screens/Profile/Sections/Labels.tsx @@ -1,5 +1,5 @@ import React from 'react' -import {View} from 'react-native' +import {findNodeHandle, View} from 'react-native' import {useSafeAreaFrame} from 'react-native-safe-area-context' import { AppBskyLabelerDefs, @@ -32,6 +32,8 @@ interface LabelsSectionProps { moderationOpts: ModerationOpts scrollElRef: ListRef headerHeight: number + isFocused: boolean + setScrollViewTag: (tag: number | null) => void } export const ProfileLabelsSection = React.forwardRef< SectionRef, @@ -44,6 +46,8 @@ export const ProfileLabelsSection = React.forwardRef< moderationOpts, scrollElRef, headerHeight, + isFocused, + setScrollViewTag, }, ref, ) { @@ -63,6 +67,13 @@ export const ProfileLabelsSection = React.forwardRef< scrollToTop: onScrollToTop, })) + React.useEffect(() => { + if (isFocused && scrollElRef.current) { + const nativeTag = findNodeHandle(scrollElRef.current) + setScrollViewTag(nativeTag) + } + }, [isFocused, scrollElRef, setScrollViewTag]) + return ( <CenteredView style={{flex: 1, minHeight}} sideBorders> {isLabelerLoading ? ( |