From 4290618263d950d4fb2bfde77bfd6c926b36295e Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Tue, 16 Jun 2026 15:12:06 -0500 Subject: [PATCH] Revert "Reset textarea height after clear (#10911)" This reverts commit f075187e57a0c1a267efc690f105452209b6ce40. --- src/components/Composer/index.tsx | 10 ---------- src/components/forms/AutosizedTextarea.tsx | 23 +--------------------- 2 files changed, 1 insertion(+), 32 deletions(-) diff --git a/src/components/Composer/index.tsx b/src/components/Composer/index.tsx index cf79abddf7..855f4a1de5 100644 --- a/src/components/Composer/index.tsx +++ b/src/components/Composer/index.tsx @@ -34,7 +34,6 @@ import { } from '#/components/Autocomplete' import { AutosizedTextarea, - type AutosizedTextareaHeightApi, type AutosizedTextareaProps, } from '#/components/forms/AutosizedTextarea' import {Span, Text} from '#/components/Typography' @@ -151,13 +150,6 @@ export function Composer({ */ const inputScrollSharedValue = useSharedValue(0) - /* - * Imperative handle on the underlying textarea, used to reset its height when - * the input is cleared programmatically (Android doesn't fire - * `onContentSizeChange` in that case). - */ - const heightApiRef = useRef(null) - /* * Expose imperative internal API */ @@ -168,7 +160,6 @@ export function Composer({ clear: () => { tapper.inputProps.onChangeText('') inputScrollSharedValue.value = 0 - heightApiRef.current?.resetHeight() }, insert: tapper.insert, setAutocompleteAnchor: sift.refs.setAnchor, @@ -330,7 +321,6 @@ export function Composer({ )} void -} - export type AutosizedTextareaProps = Omit & { ref?: React.Ref - heightApiRef?: React.Ref label: string minRows?: number maxRows?: number @@ -30,7 +20,6 @@ export type AutosizedTextareaProps = Omit & { export function AutosizedTextarea({ ref, - heightApiRef, label, minRows = 1, maxRows, @@ -118,16 +107,6 @@ export function AutosizedTextarea({ * directly drive the `height`. */ const [nativeHeight, setNativeHeight] = useState(minInputHeight) - useImperativeHandle( - heightApiRef, - () => ({ - resetHeight: () => { - setNativeHeight(minInputHeight) - onUpdateHeight?.(minInputHeight) - }, - }), - [minInputHeight, onUpdateHeight], - ) const onContentSizeChange = (e: TextInputContentSizeChangeEvent) => { const contentSize = Math.ceil(e.nativeEvent.contentSize.height) // ios reports the content size without padding