···8899import {UsePreferencesQueryResponse} from '#/state/queries/preferences/types'
1010import {getAgent} from '#/state/session'
1111+import {findAllPostsInQueryData as findAllPostsInSearchQueryData} from 'state/queries/search-posts'
1112import {findAllPostsInQueryData as findAllPostsInNotifsQueryData} from './notifications/feed'
1213import {findAllPostsInQueryData as findAllPostsInFeedQueryData} from './post-feed'
1314import {precacheThreadPostProfiles} from './profile'
···258259 yield postViewToPlaceholderThread(post)
259260 }
260261 for (let post of findAllPostsInNotifsQueryData(queryClient, uri)) {
262262+ yield postViewToPlaceholderThread(post)
263263+ }
264264+ for (let post of findAllPostsInSearchQueryData(queryClient, uri)) {
261265 yield postViewToPlaceholderThread(post)
262266 }
263267}
+32-21
src/view/com/post/Post.tsx
···11-import React, {useState, useMemo} from 'react'
11+import React, {useMemo, useState} from 'react'
22import {StyleProp, StyleSheet, View, ViewStyle} from 'react-native'
33import {
44 AppBskyFeedDefs,
···77 ModerationDecision,
88 RichText as RichTextAPI,
99} from '@atproto/api'
1010+import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
1111+import {msg, Trans} from '@lingui/macro'
1212+import {useLingui} from '@lingui/react'
1313+import {useQueryClient} from '@tanstack/react-query'
1414+1015import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped'
1111-import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
1616+import {POST_TOMBSTONE, Shadow, usePostShadow} from '#/state/cache/post-shadow'
1717+import {useModerationOpts} from '#/state/queries/preferences'
1818+import {useComposerControls} from '#/state/shell/composer'
1919+import {MAX_POST_LINES} from 'lib/constants'
2020+import {usePalette} from 'lib/hooks/usePalette'
2121+import {makeProfileLink} from 'lib/routes/links'
2222+import {countLines} from 'lib/strings/helpers'
2323+import {colors, s} from 'lib/styles'
2424+import {RQKEY as RQKEY_URI} from 'state/queries/resolve-uri'
2525+import {atoms as a} from '#/alf'
2626+import {RichText} from '#/components/RichText'
2727+import {ContentHider} from '../../../components/moderation/ContentHider'
2828+import {LabelsOnMyPost} from '../../../components/moderation/LabelsOnMe'
2929+import {PostAlerts} from '../../../components/moderation/PostAlerts'
1230import {Link, TextLink} from '../util/Link'
1313-import {UserInfoText} from '../util/UserInfoText'
1414-import {PostMeta} from '../util/PostMeta'
3131+import {PostCtrls} from '../util/post-ctrls/PostCtrls'
1532import {PostEmbeds} from '../util/post-embeds'
1616-import {PostCtrls} from '../util/post-ctrls/PostCtrls'
1717-import {ContentHider} from '../../../components/moderation/ContentHider'
1818-import {PostAlerts} from '../../../components/moderation/PostAlerts'
1919-import {LabelsOnMyPost} from '../../../components/moderation/LabelsOnMe'
3333+import {PostMeta} from '../util/PostMeta'
2034import {Text} from '../util/text/Text'
2121-import {RichText} from '#/components/RichText'
2235import {PreviewableUserAvatar} from '../util/UserAvatar'
2323-import {s, colors} from 'lib/styles'
2424-import {usePalette} from 'lib/hooks/usePalette'
2525-import {makeProfileLink} from 'lib/routes/links'
2626-import {MAX_POST_LINES} from 'lib/constants'
2727-import {countLines} from 'lib/strings/helpers'
2828-import {useModerationOpts} from '#/state/queries/preferences'
2929-import {useComposerControls} from '#/state/shell/composer'
3030-import {Shadow, usePostShadow, POST_TOMBSTONE} from '#/state/cache/post-shadow'
3131-import {Trans, msg} from '@lingui/macro'
3232-import {useLingui} from '@lingui/react'
3333-import {atoms as a} from '#/alf'
3636+import {UserInfoText} from '../util/UserInfoText'
34373538export function Post({
3639 post,
···98101 showReplyLine?: boolean
99102 style?: StyleProp<ViewStyle>
100103}) {
104104+ const queryClient = useQueryClient()
101105 const pal = usePalette('default')
102106 const {_} = useLingui()
103107 const {openComposer} = useComposerControls()
···129133 setLimitLines(false)
130134 }, [setLimitLines])
131135136136+ const onBeforePress = React.useCallback(() => {
137137+ queryClient.setQueryData(RQKEY_URI(post.author.handle), post.author.did)
138138+ }, [queryClient, post.author.handle, post.author.did])
139139+132140 return (
133133- <Link href={itemHref} style={[styles.outer, pal.border, style]}>
141141+ <Link
142142+ href={itemHref}
143143+ style={[styles.outer, pal.border, style]}
144144+ onBeforePress={onBeforePress}>
134145 {showReplyLine && <View style={styles.replyLine} />}
135146 <View style={styles.layout}>
136147 <View style={styles.layoutAvi}>