From fa72f7684b7678d51e7fb95279f3998aa468fac6 Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Wed, 5 Aug 2026 20:27:20 +0300 Subject: [PATCH] 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 --- src/components/dialogs/Embed.tsx | 4 ++-- src/components/dialogs/Signin.tsx | 4 ++-- .../dialogs/nuxs/InitialVerificationAnnouncement.tsx | 5 +++-- src/components/intents/VerifyEmailIntentDialog.tsx | 5 +++-- src/components/moderation/ReportDialog/index.tsx | 4 ++-- src/components/verification/VerificationsDialog.tsx | 5 +++-- src/components/verification/VerifierDialog.tsx | 5 +++-- src/view/com/composer/labels/LabelsBtn.tsx | 2 +- 8 files changed, 19 insertions(+), 15 deletions(-) diff --git a/src/components/dialogs/Embed.tsx b/src/components/dialogs/Embed.tsx index caecc9a2a9..6c0f2e052e 100644 --- a/src/components/dialogs/Embed.tsx +++ b/src/components/dialogs/Embed.tsx @@ -8,7 +8,7 @@ import {Trans} from '@lingui/react/macro' import {EMBED_SCRIPT} from '#/lib/constants' import {niceDate} from '#/lib/strings/time' 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 * as Dialog from '#/components/Dialog' import * as SegmentedControl from '#/components/forms/SegmentedControl' @@ -103,7 +103,7 @@ function EmbedDialogInner({ }, [i18n, postUri, postCid, record, timestamp, postAuthor, colorMode]) return ( - + diff --git a/src/components/dialogs/Signin.tsx b/src/components/dialogs/Signin.tsx index d98299a985..a8939eb07d 100644 --- a/src/components/dialogs/Signin.tsx +++ b/src/components/dialogs/Signin.tsx @@ -8,7 +8,7 @@ import {useLoggedOutViewControls} from '#/state/shell/logged-out' import {useCloseAllActiveElements} from '#/state/util' import {Logo} from '#/view/icons/Logo' 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 * as Dialog from '#/components/Dialog' import {useGlobalDialogsControlContext} from '#/components/dialogs/Context' @@ -45,7 +45,7 @@ function SigninDialogInner({}: {control: Dialog.DialogOuterProps['control']}) { return ( + style={[a.w_full, gtMobile && web({width: 'auto', maxWidth: 420})]}> {status === 'loading' ? ( diff --git a/src/components/moderation/ReportDialog/index.tsx b/src/components/moderation/ReportDialog/index.tsx index c5c60ccba4..0004144a07 100644 --- a/src/components/moderation/ReportDialog/index.tsx +++ b/src/components/moderation/ReportDialog/index.tsx @@ -18,7 +18,7 @@ import {sanitizeHandle} from '#/lib/strings/handles' import {useMyLabelersQuery} from '#/state/queries/preferences' import {CharProgress} from '#/view/com/composer/char-progress/CharProgress' 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 {Button, ButtonIcon, ButtonText} from '#/components/Button' import * as Dialog from '#/components/Dialog' @@ -335,7 +335,7 @@ function Inner( testID="report:dialog" label={l`Report dialog`} ref={ref} - style={[a.w_full, {maxWidth: 500}]}> + style={[a.w_full, web({maxWidth: 500})]}> diff --git a/src/components/verification/VerifierDialog.tsx b/src/components/verification/VerifierDialog.tsx index e8944024ca..70648045ea 100644 --- a/src/components/verification/VerifierDialog.tsx +++ b/src/components/verification/VerifierDialog.tsx @@ -7,7 +7,7 @@ import {Trans} from '@lingui/react/macro' import {urls} from '#/lib/constants' import {getUserDisplayName} from '#/lib/getUserDisplayName' 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 * as Dialog from '#/components/Dialog' import {VerifierCheck} from '#/components/icons/VerifierCheck' @@ -65,7 +65,8 @@ function Inner({ + style={[a.w_full, web({maxWidth: 500})]}>