From 9edb4879494b348616caca6999ee89658f439c49 Mon Sep 17 00:00:00 2001 From: Hailey Date: Wed, 29 May 2024 20:28:32 -0700 Subject: Always show the header on post threads on native (#4254) * always show header on native * ALF ALF ALF * rm offset for top border * wrap in a `CenteredView` * use `CenteredView`'s side borders * account for loading state on web * move `isTabletOrMobile` * hide top border on first post in list * show border if parents are loading * don't show top border for deleted or blocked posts * hide top border for hidden replies * Rm root post top border --------- Co-authored-by: Dan Abramov --- src/view/com/post-thread/PostThreadItem.tsx | 43 ++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 7 deletions(-) (limited to 'src/view/com/post-thread/PostThreadItem.tsx') diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx index 0ff040b9c..99fbda6d2 100644 --- a/src/view/com/post-thread/PostThreadItem.tsx +++ b/src/view/com/post-thread/PostThreadItem.tsx @@ -65,6 +65,7 @@ export function PostThreadItem({ hasPrecedingItem, overrideBlur, onPostReply, + hideTopBorder, }: { post: AppBskyFeedDefs.PostView record: AppBskyFeedPost.Record @@ -80,6 +81,7 @@ export function PostThreadItem({ hasPrecedingItem: boolean overrideBlur: boolean onPostReply: () => void + hideTopBorder?: boolean }) { const postShadowed = usePostShadow(post) const richText = useMemo( @@ -91,7 +93,7 @@ export function PostThreadItem({ [record], ) if (postShadowed === POST_TOMBSTONE) { - return + return } if (richText && moderation) { return ( @@ -113,16 +115,25 @@ export function PostThreadItem({ hasPrecedingItem={hasPrecedingItem} overrideBlur={overrideBlur} onPostReply={onPostReply} + hideTopBorder={hideTopBorder} /> ) } return null } -function PostThreadItemDeleted() { +function PostThreadItemDeleted({hideTopBorder}: {hideTopBorder?: boolean}) { const pal = usePalette('default') return ( - + This post has been deleted. @@ -147,6 +158,7 @@ let PostThreadItemLoaded = ({ hasPrecedingItem, overrideBlur, onPostReply, + hideTopBorder, }: { post: Shadow record: AppBskyFeedPost.Record @@ -163,6 +175,7 @@ let PostThreadItemLoaded = ({ hasPrecedingItem: boolean overrideBlur: boolean onPostReply: () => void + hideTopBorder?: boolean }): React.ReactNode => { const pal = usePalette('default') const {_} = useLingui() @@ -237,7 +250,7 @@ let PostThreadItemLoaded = ({ styles.replyLine, { flexGrow: 1, - backgroundColor: pal.colors.border, + backgroundColor: pal.colors.replyLine, }, ]} /> @@ -247,7 +260,14 @@ let PostThreadItemLoaded = ({ @@ -395,7 +415,8 @@ let PostThreadItemLoaded = ({ depth={depth} showParentReplyLine={!!showParentReplyLine} treeView={treeView} - hasPrecedingItem={hasPrecedingItem}> + hasPrecedingItem={hasPrecedingItem} + hideTopBorder={hideTopBorder}> ) { const {isMobile} = useWebMediaQueries() const pal = usePalette('default') @@ -617,6 +640,7 @@ function PostOuterWrapper({ styles.outer, pal.border, showParentReplyLine && hasPrecedingItem && styles.noTopBorder, + hideTopBorder && styles.noTopBorder, styles.cursor, ]}> {children} @@ -677,10 +701,15 @@ const styles = StyleSheet.create({ paddingLeft: 8, }, outerHighlighted: { - paddingTop: 16, + borderTopWidth: 0, + paddingTop: 4, paddingLeft: 8, paddingRight: 8, }, + outerHighlightedRoot: { + borderTopWidth: 1, + paddingTop: 16, + }, noTopBorder: { borderTopWidth: 0, }, -- cgit 1.4.1