diff options
author | Samuel Newman <mozzius@protonmail.com> | 2025-07-09 10:14:30 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-09 00:14:30 -0700 |
commit | 07b028ee668afee13d878c8ff4c579276fd69f6c (patch) | |
tree | 5ca697be20c174fefefb7257be4cd42571896daa /src/components/Post/Embed/index.tsx | |
parent | 1fcd313424c431b9a8ac48e7234d2dd52f6dcb6a (diff) | |
download | voidsky-07b028ee668afee13d878c8ff4c579276fd69f6c.tar.zst |
Fix quote+list card padding (#8623)
* fix quote padding not being pressable * fix list padding not being pressable * Fix unnecessary loading of feeds (#8578) * stop layout shifts in feed loading * don't load feed data if we already have it * adjust styles, alf stuff * remove unused button, massively simplify * fix layout shifting in notifs * use feedcard for feed post embeds * use bold text to match other style * use Link component rather than jank Pressable * prevent nested anchors in notifs * match following text size * add space between content hider * Better dead feed handling (#8579) * add space between content hider * add handling for feeds that fail to load * cleanError, in case of network funkiness * handle deleted lists * split out missingfeed
Diffstat (limited to 'src/components/Post/Embed/index.tsx')
-rw-r--r-- | src/components/Post/Embed/index.tsx | 106 |
1 files changed, 51 insertions, 55 deletions
diff --git a/src/components/Post/Embed/index.tsx b/src/components/Post/Embed/index.tsx index ace85dc98..9c5444b27 100644 --- a/src/components/Post/Embed/index.tsx +++ b/src/components/Post/Embed/index.tsx @@ -268,64 +268,60 @@ export function QuoteEmbed({ const [hover, setHover] = React.useState(false) return ( <View - onPointerEnter={() => { - setHover(true) - }} - onPointerLeave={() => { - setHover(false) - }}> + style={[a.mt_sm]} + onPointerEnter={() => setHover(true)} + onPointerLeave={() => setHover(false)}> <ContentHider modui={moderation?.ui('contentList')} - style={[ - a.rounded_md, - a.p_md, - a.mt_sm, - a.border, - t.atoms.border_contrast_low, - style, - ]} + style={[a.rounded_md, a.border, t.atoms.border_contrast_low, style]} + activeStyle={[a.p_md, a.pt_sm]} childContainerStyle={[a.pt_sm]}> - <SubtleWebHover hover={hover} /> - <Link - hoverStyle={{borderColor: pal.colors.borderLinkHover}} - href={itemHref} - title={itemTitle} - onBeforePress={onBeforePress}> - <View pointerEvents="none"> - <PostMeta - author={quote.author} - moderation={moderation} - showAvatar - postHref={itemHref} - timestamp={quote.indexedAt} - /> - </View> - {moderation ? ( - <PostAlerts - modui={moderation.ui('contentView')} - style={[a.py_xs]} - /> - ) : null} - {richText ? ( - <RichText - value={richText} - style={a.text_md} - numberOfLines={20} - disableLinks - /> - ) : null} - {quote.embed && ( - <Embed - embed={quote.embed} - moderation={moderation} - isWithinQuote={parentIsWithinQuote ?? true} - // already within quote? override nested - allowNestedQuotes={ - parentIsWithinQuote ? false : parentAllowNestedQuotes - } - /> - )} - </Link> + {({active}) => ( + <> + {!active && <SubtleWebHover hover={hover} style={[a.rounded_md]} />} + <Link + style={[!active && a.p_md]} + hoverStyle={{borderColor: pal.colors.borderLinkHover}} + href={itemHref} + title={itemTitle} + onBeforePress={onBeforePress}> + <View pointerEvents="none"> + <PostMeta + author={quote.author} + moderation={moderation} + showAvatar + postHref={itemHref} + timestamp={quote.indexedAt} + /> + </View> + {moderation ? ( + <PostAlerts + modui={moderation.ui('contentView')} + style={[a.py_xs]} + /> + ) : null} + {richText ? ( + <RichText + value={richText} + style={a.text_md} + numberOfLines={20} + disableLinks + /> + ) : null} + {quote.embed && ( + <Embed + embed={quote.embed} + moderation={moderation} + isWithinQuote={parentIsWithinQuote ?? true} + // already within quote? override nested + allowNestedQuotes={ + parentIsWithinQuote ? false : parentAllowNestedQuotes + } + /> + )} + </Link> + </> + )} </ContentHider> </View> ) |