diff --git a/src/components/EmojiPickerDialog/index.tsx b/src/components/EmojiPickerDialog/index.tsx index 29ec71e0..8766b5ae 100644 --- a/src/components/EmojiPickerDialog/index.tsx +++ b/src/components/EmojiPickerDialog/index.tsx @@ -24,9 +24,10 @@ export default function EmojiPickerDialog({ if (isSmallScreen) { return ( - + {children} { diff --git a/src/components/GifPicker/index.tsx b/src/components/GifPicker/index.tsx index 82f13e71..1460ae0f 100644 --- a/src/components/GifPicker/index.tsx +++ b/src/components/GifPicker/index.tsx @@ -538,9 +538,9 @@ export default function GifPicker({ if (isSmallScreen) { return ( - + {children} - + {t('Choose a GIF')} diff --git a/src/components/NoteStats/LikeButton.tsx b/src/components/NoteStats/LikeButton.tsx index 8c855fb5..1693e726 100644 --- a/src/components/NoteStats/LikeButton.tsx +++ b/src/components/NoteStats/LikeButton.tsx @@ -276,8 +276,9 @@ export default function LikeButton({ event, hideCount = false }: { event: Event; return ( <> {trigger} - + { const t = e.target as HTMLElement | null if (t?.closest?.('[data-vaul-overlay]')) return diff --git a/src/components/ui/drawer.tsx b/src/components/ui/drawer.tsx index 15609a15..e1d5b3e2 100644 --- a/src/components/ui/drawer.tsx +++ b/src/components/ui/drawer.tsx @@ -72,8 +72,13 @@ const DrawerContent = React.forwardRef< React.ComponentPropsWithoutRef & { hideOverlay?: boolean portalContainer?: HTMLElement | null + /** + * `vaul` — use Vaul’s real handle (`data-vaul-handle`). Pair with `handleOnly` on `Drawer` so + * scrolling inner content (e.g. emoji grid) does not drag the sheet. + */ + dragHandle?: 'decorative' | 'vaul' } ->(({ className, children, hideOverlay = false, portalContainer, ...props }, ref) => ( +>(({ className, children, hideOverlay = false, portalContainer, dragHandle = 'decorative', ...props }, ref) => ( {!hideOverlay && } e.preventDefault()} {...props} > -
+ {dragHandle === 'vaul' ? ( + + ) : ( +
+ )} {children}