diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/components/ProfileCard.tsx | 4 | ||||
-rw-r--r-- | src/components/ProfileHoverCard/index.web.tsx | 3 | ||||
-rw-r--r-- | src/components/StarterPack/Wizard/WizardListCard.tsx | 8 | ||||
-rw-r--r-- | src/components/dms/MessagesListHeader.tsx | 7 | ||||
-rw-r--r-- | src/components/dms/dialogs/SearchablePeopleList.tsx | 2 | ||||
-rw-r--r-- | src/lib/strings/constants.ts | 1 | ||||
-rw-r--r-- | src/screens/Profile/Header/DisplayName.tsx | 2 | ||||
-rw-r--r-- | src/view/com/notifications/FeedItem.tsx | 9 | ||||
-rw-r--r-- | src/view/com/post-thread/PostThreadItem.tsx | 2 | ||||
-rw-r--r-- | src/view/com/profile/ProfileCard.tsx | 2 | ||||
-rw-r--r-- | src/view/com/util/PostMeta.tsx | 18 | ||||
-rw-r--r-- | src/view/screens/Settings/index.tsx | 3 | ||||
-rw-r--r-- | src/view/shell/desktop/Search.tsx | 3 |
13 files changed, 41 insertions, 23 deletions
diff --git a/src/components/ProfileCard.tsx b/src/components/ProfileCard.tsx index 79f1108cb..8bc9376e0 100644 --- a/src/components/ProfileCard.tsx +++ b/src/components/ProfileCard.tsx @@ -166,7 +166,9 @@ export function NameAndHandle({ return ( <View style={[a.flex_1]}> - <Text style={[a.text_md, a.font_bold, a.leading_snug]} numberOfLines={1}> + <Text + style={[a.text_md, a.font_bold, a.leading_snug, a.self_start]} + numberOfLines={1}> {name} </Text> <Text diff --git a/src/components/ProfileHoverCard/index.web.tsx b/src/components/ProfileHoverCard/index.web.tsx index 84b1d6d24..928000988 100644 --- a/src/components/ProfileHoverCard/index.web.tsx +++ b/src/components/ProfileHoverCard/index.web.tsx @@ -462,7 +462,8 @@ function Inner({ <Link to={profileURL} label={_(msg`View profile`)} onPress={hide}> <View style={[a.pb_sm, a.flex_1]}> - <Text style={[a.pt_md, a.pb_xs, a.text_lg, a.font_bold]}> + <Text + style={[a.pt_md, a.pb_xs, a.text_lg, a.font_bold, a.self_start]}> {sanitizeDisplayName( profile.displayName || sanitizeHandle(profile.handle), moderation.ui('displayName'), diff --git a/src/components/StarterPack/Wizard/WizardListCard.tsx b/src/components/StarterPack/Wizard/WizardListCard.tsx index aa1b2cf9b..55cf0f02b 100644 --- a/src/components/StarterPack/Wizard/WizardListCard.tsx +++ b/src/components/StarterPack/Wizard/WizardListCard.tsx @@ -78,7 +78,13 @@ function WizardListCard({ /> <View style={[a.flex_1, a.gap_2xs]}> <Text - style={[a.flex_1, a.font_bold, a.text_md, a.leading_tight]} + style={[ + a.flex_1, + a.font_bold, + a.text_md, + a.leading_tight, + a.self_start, + ]} numberOfLines={1}> {displayName} </Text> diff --git a/src/components/dms/MessagesListHeader.tsx b/src/components/dms/MessagesListHeader.tsx index 8bf673d30..7b9f1a3a0 100644 --- a/src/components/dms/MessagesListHeader.tsx +++ b/src/components/dms/MessagesListHeader.tsx @@ -168,7 +168,12 @@ function HeaderReady({ </View> <View style={a.flex_1}> <Text - style={[a.text_md, a.font_bold, web(a.leading_normal)]} + style={[ + a.text_md, + a.font_bold, + a.self_start, + web(a.leading_normal), + ]} numberOfLines={1}> {displayName} </Text> diff --git a/src/components/dms/dialogs/SearchablePeopleList.tsx b/src/components/dms/dialogs/SearchablePeopleList.tsx index d92ea6835..a13dfe509 100644 --- a/src/components/dms/dialogs/SearchablePeopleList.tsx +++ b/src/components/dms/dialogs/SearchablePeopleList.tsx @@ -395,7 +395,7 @@ function ProfileCard({ /> <View style={[a.flex_1, a.gap_2xs]}> <Text - style={[t.atoms.text, a.font_bold, a.leading_tight]} + style={[t.atoms.text, a.font_bold, a.leading_tight, a.self_start]} numberOfLines={1}> {displayName} </Text> diff --git a/src/lib/strings/constants.ts b/src/lib/strings/constants.ts new file mode 100644 index 000000000..4bce3ac62 --- /dev/null +++ b/src/lib/strings/constants.ts @@ -0,0 +1 @@ +export const NON_BREAKING_SPACE = '\u00A0' diff --git a/src/screens/Profile/Header/DisplayName.tsx b/src/screens/Profile/Header/DisplayName.tsx index c63658a44..955e3d72c 100644 --- a/src/screens/Profile/Header/DisplayName.tsx +++ b/src/screens/Profile/Header/DisplayName.tsx @@ -20,7 +20,7 @@ export function ProfileHeaderDisplayName({ <View pointerEvents="none"> <Text testID="profileHeaderDisplayName" - style={[t.atoms.text, a.text_4xl, {fontWeight: '500'}]}> + style={[t.atoms.text, a.text_4xl, a.self_start, {fontWeight: '500'}]}> {sanitizeDisplayName( profile.displayName || sanitizeHandle(profile.handle), moderation.ui('displayName'), diff --git a/src/view/com/notifications/FeedItem.tsx b/src/view/com/notifications/FeedItem.tsx index 1932efbd5..d31962ff3 100644 --- a/src/view/com/notifications/FeedItem.tsx +++ b/src/view/com/notifications/FeedItem.tsx @@ -58,6 +58,7 @@ import {useNavigation} from '@react-navigation/native' import {parseTenorGif} from '#/lib/strings/embed-player' import {logger} from '#/logger' import {NavigationProp} from 'lib/routes/types' +import {forceLTR} from 'lib/strings/bidi' import {DM_SERVICE_HEADERS} from 'state/queries/messages/const' import {useAgent} from 'state/session' import {Button, ButtonText} from '#/components/Button' @@ -274,13 +275,15 @@ let FeedItem = ({ showDmButton={item.type === 'starterpack-joined' || isFollowBack} /> <ExpandedAuthorsList visible={isAuthorsExpanded} authors={authors} /> - <Text style={styles.meta}> + <Text style={[styles.meta, a.self_start]}> <TextLink key={authors[0].href} style={[pal.text, s.bold]} href={authors[0].href} - text={sanitizeDisplayName( - authors[0].profile.displayName || authors[0].profile.handle, + text={forceLTR( + sanitizeDisplayName( + authors[0].profile.displayName || authors[0].profile.handle, + ), )} disableMismatchWarning /> diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx index 0f5350e79..4e6ed27be 100644 --- a/src/view/com/post-thread/PostThreadItem.tsx +++ b/src/view/com/post-thread/PostThreadItem.tsx @@ -281,7 +281,7 @@ let PostThreadItemLoaded = ({ <Link style={s.flex1} href={authorHref} title={authorTitle}> <Text type="xl-bold" - style={[pal.text]} + style={[pal.text, a.self_start]} numberOfLines={1} lineHeight={1.2}> {sanitizeDisplayName( diff --git a/src/view/com/profile/ProfileCard.tsx b/src/view/com/profile/ProfileCard.tsx index 7332d452a..d18103f30 100644 --- a/src/view/com/profile/ProfileCard.tsx +++ b/src/view/com/profile/ProfileCard.tsx @@ -97,7 +97,7 @@ export function ProfileCard({ <View style={styles.layoutContent}> <Text type="lg" - style={[s.bold, pal.text]} + style={[s.bold, pal.text, a.self_start]} numberOfLines={1} lineHeight={1.2}> {sanitizeDisplayName( diff --git a/src/view/com/util/PostMeta.tsx b/src/view/com/util/PostMeta.tsx index aec787e4e..95168e8b3 100644 --- a/src/view/com/util/PostMeta.tsx +++ b/src/view/com/util/PostMeta.tsx @@ -6,6 +6,8 @@ import {useQueryClient} from '@tanstack/react-query' import {precacheProfile} from '#/state/queries/profile' import {usePalette} from 'lib/hooks/usePalette' import {makeProfileLink} from 'lib/routes/links' +import {forceLTR} from 'lib/strings/bidi' +import {NON_BREAKING_SPACE} from 'lib/strings/constants' import {sanitizeDisplayName} from 'lib/strings/display-names' import {sanitizeHandle} from 'lib/strings/handles' import {niceDate} from 'lib/strings/time' @@ -32,8 +34,6 @@ interface PostMetaOpts { style?: StyleProp<ViewStyle> } -const NON_BREAKING_SPACE = '\u00A0' - let PostMeta = (opts: PostMetaOpts): React.ReactNode => { const pal = usePalette('default') const displayName = opts.author.displayName || opts.author.handle @@ -70,14 +70,12 @@ let PostMeta = (opts: PostMetaOpts): React.ReactNode => { style={[pal.text]} lineHeight={1.2} disableMismatchWarning - text={ - <> - {sanitizeDisplayName( - displayName, - opts.moderation?.ui('displayName'), - )} - </> - } + text={forceLTR( + sanitizeDisplayName( + displayName, + opts.moderation?.ui('displayName'), + ), + )} href={profileLink} onBeforePress={onBeforePressAuthor} /> diff --git a/src/view/screens/Settings/index.tsx b/src/view/screens/Settings/index.tsx index 1d8199b00..f59bfb183 100644 --- a/src/view/screens/Settings/index.tsx +++ b/src/view/screens/Settings/index.tsx @@ -68,6 +68,7 @@ import {navigate, resetToTab} from '#/Navigation' import {Email2FAToggle} from './Email2FAToggle' import {ExportCarDialog} from './ExportCarDialog' import hairlineWidth = StyleSheet.hairlineWidth +import {atoms as a} from '#/alf' function SettingsAccountCard({ account, @@ -104,7 +105,7 @@ function SettingsAccountCard({ /> </View> <View style={[s.flex1]}> - <Text type="md-bold" style={pal.text} numberOfLines={1}> + <Text type="md-bold" style={[pal.text, a.self_start]} numberOfLines={1}> {profile?.displayName || account.handle} </Text> <Text type="sm" style={pal.textLight} numberOfLines={1}> diff --git a/src/view/shell/desktop/Search.tsx b/src/view/shell/desktop/Search.tsx index 3829a6c0b..d8aa51899 100644 --- a/src/view/shell/desktop/Search.tsx +++ b/src/view/shell/desktop/Search.tsx @@ -30,6 +30,7 @@ import {precacheProfile} from 'state/queries/profile' import {Link} from '#/view/com/util/Link' import {UserAvatar} from '#/view/com/util/UserAvatar' import {Text} from 'view/com/util/text/Text' +import {atoms as a} from '#/alf' let SearchLinkCard = ({ label, @@ -127,7 +128,7 @@ let SearchProfileCard = ({ <View style={{flex: 1}}> <Text type="lg" - style={[s.bold, pal.text]} + style={[s.bold, pal.text, a.self_start]} numberOfLines={1} lineHeight={1.2}> {sanitizeDisplayName( |