scope web-only dialog width caps to web
now that android tablet sheets lay content out at the real 640dp canvas, unscoped maxWidth caps on dialog content (previously inert on phones) became visible as narrow left-aligned content. wrap them in web() to match the established pattern (BlockDialog, ModerationDetailsDialog). also covers gtMobile-gated caps, which were live on android tablets because useBreakpoints has no native split. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -8,7 +8,7 @@ import {Trans} from '@lingui/react/macro'
|
|||||||
import {EMBED_SCRIPT} from '#/lib/constants'
|
import {EMBED_SCRIPT} from '#/lib/constants'
|
||||||
import {niceDate} from '#/lib/strings/time'
|
import {niceDate} from '#/lib/strings/time'
|
||||||
import {toShareUrl} from '#/lib/strings/url-helpers'
|
import {toShareUrl} from '#/lib/strings/url-helpers'
|
||||||
import {atoms as a, useTheme} from '#/alf'
|
import {atoms as a, useTheme, web} from '#/alf'
|
||||||
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
import * as SegmentedControl from '#/components/forms/SegmentedControl'
|
import * as SegmentedControl from '#/components/forms/SegmentedControl'
|
||||||
@@ -103,7 +103,7 @@ function EmbedDialogInner({
|
|||||||
}, [i18n, postUri, postCid, record, timestamp, postAuthor, colorMode])
|
}, [i18n, postUri, postCid, record, timestamp, postAuthor, colorMode])
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Dialog.Inner label={_(msg`Embed post`)} style={[{maxWidth: 500}]}>
|
<Dialog.Inner label={_(msg`Embed post`)} style={[web({maxWidth: 500})]}>
|
||||||
<View style={[a.gap_lg]}>
|
<View style={[a.gap_lg]}>
|
||||||
<View style={[a.gap_sm]}>
|
<View style={[a.gap_sm]}>
|
||||||
<Text style={[a.text_2xl, a.font_bold]}>
|
<Text style={[a.text_2xl, a.font_bold]}>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import {useLoggedOutViewControls} from '#/state/shell/logged-out'
|
|||||||
import {useCloseAllActiveElements} from '#/state/util'
|
import {useCloseAllActiveElements} from '#/state/util'
|
||||||
import {Logo} from '#/view/icons/Logo'
|
import {Logo} from '#/view/icons/Logo'
|
||||||
import {Logotype} from '#/view/icons/Logotype'
|
import {Logotype} from '#/view/icons/Logotype'
|
||||||
import {atoms as a, useBreakpoints, useTheme} from '#/alf'
|
import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
|
||||||
import {Button, ButtonText} from '#/components/Button'
|
import {Button, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
import {useGlobalDialogsControlContext} from '#/components/dialogs/Context'
|
import {useGlobalDialogsControlContext} from '#/components/dialogs/Context'
|
||||||
@@ -45,7 +45,7 @@ function SigninDialogInner({}: {control: Dialog.DialogOuterProps['control']}) {
|
|||||||
return (
|
return (
|
||||||
<Dialog.ScrollableInner
|
<Dialog.ScrollableInner
|
||||||
label={_(msg`Sign in to Bluesky or create a new account`)}
|
label={_(msg`Sign in to Bluesky or create a new account`)}
|
||||||
style={[gtMobile ? {width: 'auto', maxWidth: 420} : a.w_full]}>
|
style={[a.w_full, gtMobile && web({width: 'auto', maxWidth: 420})]}>
|
||||||
<View style={[!IS_NATIVE && a.p_2xl]}>
|
<View style={[!IS_NATIVE && a.p_2xl]}>
|
||||||
<View
|
<View
|
||||||
style={[
|
style={[
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import {useLingui} from '@lingui/react'
|
|||||||
import {Trans} from '@lingui/react/macro'
|
import {Trans} from '@lingui/react/macro'
|
||||||
|
|
||||||
import {urls} from '#/lib/constants'
|
import {urls} from '#/lib/constants'
|
||||||
import {atoms as a, useBreakpoints, useTheme} from '#/alf'
|
import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
|
||||||
import {Button, ButtonText} from '#/components/Button'
|
import {Button, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
import {useNuxDialogContext} from '#/components/dialogs/nuxs'
|
import {useNuxDialogContext} from '#/components/dialogs/nuxs'
|
||||||
@@ -38,7 +38,8 @@ export function InitialVerificationAnnouncement() {
|
|||||||
<Dialog.ScrollableInner
|
<Dialog.ScrollableInner
|
||||||
label={_(msg`Announcing verification on Bluesky`)}
|
label={_(msg`Announcing verification on Bluesky`)}
|
||||||
style={[
|
style={[
|
||||||
gtMobile ? {width: 'auto', maxWidth: 400, minWidth: 200} : a.w_full,
|
a.w_full,
|
||||||
|
gtMobile && web({width: 'auto', maxWidth: 400, minWidth: 200}),
|
||||||
]}>
|
]}>
|
||||||
<View style={[a.align_start, a.gap_xl]}>
|
<View style={[a.align_start, a.gap_xl]}>
|
||||||
<View
|
<View
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import {useLingui} from '@lingui/react'
|
|||||||
import {Trans} from '@lingui/react/macro'
|
import {Trans} from '@lingui/react/macro'
|
||||||
|
|
||||||
import {usePdsClient, useSession} from '#/state/session'
|
import {usePdsClient, useSession} from '#/state/session'
|
||||||
import {atoms as a, useBreakpoints, useTheme} from '#/alf'
|
import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
|
||||||
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
import {type DialogControlProps} from '#/components/Dialog'
|
import {type DialogControlProps} from '#/components/Dialog'
|
||||||
@@ -62,7 +62,8 @@ function Inner({}: {control: DialogControlProps}) {
|
|||||||
<Dialog.ScrollableInner
|
<Dialog.ScrollableInner
|
||||||
label={_(msg`Verify email dialog`)}
|
label={_(msg`Verify email dialog`)}
|
||||||
style={[
|
style={[
|
||||||
gtMobile ? {width: 'auto', maxWidth: 400, minWidth: 200} : a.w_full,
|
a.w_full,
|
||||||
|
gtMobile && web({width: 'auto', maxWidth: 400, minWidth: 200}),
|
||||||
]}>
|
]}>
|
||||||
<View style={[a.gap_xl]}>
|
<View style={[a.gap_xl]}>
|
||||||
{status === 'loading' ? (
|
{status === 'loading' ? (
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import {sanitizeHandle} from '#/lib/strings/handles'
|
|||||||
import {useMyLabelersQuery} from '#/state/queries/preferences'
|
import {useMyLabelersQuery} from '#/state/queries/preferences'
|
||||||
import {CharProgress} from '#/view/com/composer/char-progress/CharProgress'
|
import {CharProgress} from '#/view/com/composer/char-progress/CharProgress'
|
||||||
import {UserAvatar} from '#/view/com/util/UserAvatar'
|
import {UserAvatar} from '#/view/com/util/UserAvatar'
|
||||||
import {atoms as a, useGutters, useTheme} from '#/alf'
|
import {atoms as a, useGutters, useTheme, web} from '#/alf'
|
||||||
import * as Admonition from '#/components/Admonition'
|
import * as Admonition from '#/components/Admonition'
|
||||||
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
@@ -335,7 +335,7 @@ function Inner(
|
|||||||
testID="report:dialog"
|
testID="report:dialog"
|
||||||
label={l`Report dialog`}
|
label={l`Report dialog`}
|
||||||
ref={ref}
|
ref={ref}
|
||||||
style={[a.w_full, {maxWidth: 500}]}>
|
style={[a.w_full, web({maxWidth: 500})]}>
|
||||||
<View style={[a.gap_2xl, IS_NATIVE && a.pt_md]}>
|
<View style={[a.gap_2xl, IS_NATIVE && a.pt_md]}>
|
||||||
<StepOuter>
|
<StepOuter>
|
||||||
<StepTitle
|
<StepTitle
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import {getUserDisplayName} from '#/lib/getUserDisplayName'
|
|||||||
import {useModerationOpts} from '#/state/preferences/moderation-opts'
|
import {useModerationOpts} from '#/state/preferences/moderation-opts'
|
||||||
import {useProfileQuery} from '#/state/queries/profile'
|
import {useProfileQuery} from '#/state/queries/profile'
|
||||||
import {useSession} from '#/state/session'
|
import {useSession} from '#/state/session'
|
||||||
import {atoms as a, useBreakpoints, useTheme} from '#/alf'
|
import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
|
||||||
import {Admonition} from '#/components/Admonition'
|
import {Admonition} from '#/components/Admonition'
|
||||||
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
import {Button, ButtonIcon, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
@@ -78,7 +78,8 @@ function Inner({
|
|||||||
<Dialog.ScrollableInner
|
<Dialog.ScrollableInner
|
||||||
label={label}
|
label={label}
|
||||||
style={[
|
style={[
|
||||||
gtMobile ? {width: 'auto', maxWidth: 400, minWidth: 200} : a.w_full,
|
a.w_full,
|
||||||
|
gtMobile && web({width: 'auto', maxWidth: 400, minWidth: 200}),
|
||||||
]}>
|
]}>
|
||||||
<View style={[a.gap_sm, a.pb_lg]}>
|
<View style={[a.gap_sm, a.pb_lg]}>
|
||||||
<Text style={[a.text_2xl, a.font_semi_bold, a.pr_4xl, a.leading_tight]}>
|
<Text style={[a.text_2xl, a.font_semi_bold, a.pr_4xl, a.leading_tight]}>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import {Trans} from '@lingui/react/macro'
|
|||||||
import {urls} from '#/lib/constants'
|
import {urls} from '#/lib/constants'
|
||||||
import {getUserDisplayName} from '#/lib/getUserDisplayName'
|
import {getUserDisplayName} from '#/lib/getUserDisplayName'
|
||||||
import {useSession} from '#/state/session'
|
import {useSession} from '#/state/session'
|
||||||
import {atoms as a, useBreakpoints, useTheme} from '#/alf'
|
import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
|
||||||
import {Button, ButtonText} from '#/components/Button'
|
import {Button, ButtonText} from '#/components/Button'
|
||||||
import * as Dialog from '#/components/Dialog'
|
import * as Dialog from '#/components/Dialog'
|
||||||
import {VerifierCheck} from '#/components/icons/VerifierCheck'
|
import {VerifierCheck} from '#/components/icons/VerifierCheck'
|
||||||
@@ -65,7 +65,8 @@ function Inner({
|
|||||||
<Dialog.ScrollableInner
|
<Dialog.ScrollableInner
|
||||||
label={label}
|
label={label}
|
||||||
style={[
|
style={[
|
||||||
gtMobile ? {width: 'auto', maxWidth: 400, minWidth: 200} : a.w_full,
|
a.w_full,
|
||||||
|
gtMobile && web({width: 'auto', maxWidth: 400, minWidth: 200}),
|
||||||
]}>
|
]}>
|
||||||
<View style={[a.gap_lg]}>
|
<View style={[a.gap_lg]}>
|
||||||
<View
|
<View
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ function DialogInner({
|
|||||||
return (
|
return (
|
||||||
<Dialog.ScrollableInner
|
<Dialog.ScrollableInner
|
||||||
label={_(msg`Add a content warning`)}
|
label={_(msg`Add a content warning`)}
|
||||||
style={[{maxWidth: 500}, a.w_full]}>
|
style={[a.w_full, web({maxWidth: 500})]}>
|
||||||
<View style={[a.flex_1]}>
|
<View style={[a.flex_1]}>
|
||||||
<View style={[a.gap_sm]}>
|
<View style={[a.gap_sm]}>
|
||||||
<Text style={[a.text_2xl, a.font_semi_bold]}>
|
<Text style={[a.text_2xl, a.font_semi_bold]}>
|
||||||
|
|||||||
Reference in New Issue
Block a user