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
This commit is contained in:
Samuel Newman
2025-07-09 10:14:30 +03:00
committed by GitHub
parent 1fcd313424
commit 07b028ee66
12 changed files with 499 additions and 431 deletions
+7 -16
View File
@@ -36,6 +36,7 @@ import {FilterTimeline_Stroke2_Corner0_Rounded as FilterTimeline} from '#/compon
import {FloppyDisk_Stroke2_Corner0_Rounded as SaveIcon} from '#/components/icons/FloppyDisk'
import * as Layout from '#/components/Layout'
import {Loader} from '#/components/Loader'
import {Text as NewText} from '#/components/Typography'
type Props = NativeStackScreenProps<CommonNavigatorParams, 'SavedFeeds'>
export function SavedFeeds({}: Props) {
@@ -296,7 +297,7 @@ function ListItem({
<FeedSourceCard
key={feedUri}
feedUri={feedUri}
style={[isPinned && {paddingRight: 8}]}
style={[isPinned && a.pr_sm]}
showMinimalPlaceholder
hideTopBorder={true}
/>
@@ -391,26 +392,17 @@ function ListItem({
function FollowingFeedCard() {
const t = useTheme()
return (
<View
style={[
a.flex_row,
a.align_center,
a.flex_1,
{
paddingHorizontal: 18,
paddingVertical: 20,
},
]}>
<View style={[a.flex_row, a.align_center, a.flex_1, a.p_lg]}>
<View
style={[
a.align_center,
a.justify_center,
a.rounded_sm,
a.mr_md,
{
width: 36,
height: 36,
backgroundColor: t.palette.primary_500,
marginRight: 10,
},
]}>
<FilterTimeline
@@ -423,11 +415,10 @@ function FollowingFeedCard() {
fill={t.palette.white}
/>
</View>
<View
style={{flex: 1, flexDirection: 'row', gap: 8, alignItems: 'center'}}>
<Text type="lg-medium" style={[t.atoms.text]} numberOfLines={1}>
<View style={[a.flex_1, a.flex_row, a.gap_sm, a.align_center]}>
<NewText style={[a.text_sm, a.font_bold, a.leading_snug]}>
<Trans>Following</Trans>
</Text>
</NewText>
</View>
</View>
)