Thread composer UI (#6050)

* Basic adding of posts

* Switch active post on focus

* Conditionally show plus button

* Insert posts midthread

* Track active/inactive post

* Delete posts in a thread

* Focus after deletion

* Tweak empty post detection

* Mix height for active only

* Move toolbar with post on web

* Fix footer positioning

* Post All button

* Fix reply to positioning

* Improve memoization

* Improve memoization for clearVideo

* Remove unnecessary argument

* Add some manual memoization to fix re-renders

* Scroll to bottom on add new

* Fix opacity on Android

* Add backdrop

* Fix videos

* Check alt for video too

* Clear pending publish on error

* Fork alt message by type

* Separate placeholder for next posts

* Limit hitslop to avoid clashes
This commit is contained in:
dan
2024-11-01 03:45:55 +00:00
committed by GitHub
parent 01c9ac0e13
commit 7a08d61d88
11 changed files with 470 additions and 222 deletions
+4 -1
View File
@@ -2,6 +2,7 @@ import React, {PropsWithChildren, useMemo, useRef} from 'react'
import {
Dimensions,
GestureResponderEvent,
Insets,
StyleProp,
StyleSheet,
TouchableOpacity,
@@ -64,6 +65,7 @@ interface DropdownButtonProps {
openUpwards?: boolean
rightOffset?: number
bottomOffset?: number
hitSlop?: Insets
accessibilityLabel?: string
accessibilityHint?: string
}
@@ -80,6 +82,7 @@ export function DropdownButton({
openUpwards = false,
rightOffset = 0,
bottomOffset = 0,
hitSlop = HITSLOP_10,
accessibilityLabel,
}: PropsWithChildren<DropdownButtonProps>) {
const {_} = useLingui()
@@ -152,7 +155,7 @@ export function DropdownButton({
testID={testID}
style={style}
onPress={onPress}
hitSlop={HITSLOP_10}
hitSlop={hitSlop}
ref={ref1}
accessibilityRole="button"
accessibilityLabel={