Even less intrusive status line for posts (#1496)

zio/stable
Paul Frazee 2023-09-20 19:11:28 -07:00 committed by GitHub
parent 8f8bed9a1c
commit 95e8a6bf41
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 40 additions and 41 deletions

View File

@ -253,36 +253,48 @@ export const ComposePost = observer(function ComposePost({
<Text style={[pal.link, s.f18]}>Cancel</Text> <Text style={[pal.link, s.f18]}>Cancel</Text>
</TouchableOpacity> </TouchableOpacity>
<View style={s.flex1} /> <View style={s.flex1} />
<LabelsBtn labels={labels} onChange={setLabels} hasMedia={hasMedia} />
{isProcessing ? ( {isProcessing ? (
<View style={styles.postBtn}> <>
<ActivityIndicator /> <Text style={pal.textLight}>{processingState}</Text>
</View> <View style={styles.postBtn}>
) : canPost ? ( <ActivityIndicator />
<TouchableOpacity </View>
testID="composerPublishBtn" </>
onPress={onPressPublish}
accessibilityRole="button"
accessibilityLabel={replyTo ? 'Publish reply' : 'Publish post'}
accessibilityHint={
replyTo
? 'Double tap to publish your reply'
: 'Double tap to publish your post'
}>
<LinearGradient
colors={[gradients.blueLight.start, gradients.blueLight.end]}
start={{x: 0, y: 0}}
end={{x: 1, y: 1}}
style={styles.postBtn}>
<Text style={[s.white, s.f16, s.bold]}>
{replyTo ? 'Reply' : 'Post'}
</Text>
</LinearGradient>
</TouchableOpacity>
) : ( ) : (
<View style={[styles.postBtn, pal.btn]}> <>
<Text style={[pal.textLight, s.f16, s.bold]}>Post</Text> <LabelsBtn
</View> labels={labels}
onChange={setLabels}
hasMedia={hasMedia}
/>
{canPost ? (
<TouchableOpacity
testID="composerPublishBtn"
onPress={onPressPublish}
accessibilityRole="button"
accessibilityLabel={
replyTo ? 'Publish reply' : 'Publish post'
}
accessibilityHint="">
<LinearGradient
colors={[
gradients.blueLight.start,
gradients.blueLight.end,
]}
start={{x: 0, y: 0}}
end={{x: 1, y: 1}}
style={styles.postBtn}>
<Text style={[s.white, s.f16, s.bold]}>
{replyTo ? 'Reply' : 'Post'}
</Text>
</LinearGradient>
</TouchableOpacity>
) : (
<View style={[styles.postBtn, pal.btn]}>
<Text style={[pal.textLight, s.f16, s.bold]}>Post</Text>
</View>
)}
</>
)} )}
</View> </View>
{store.preferences.requireAltTextEnabled && gallery.needsAltText && ( {store.preferences.requireAltTextEnabled && gallery.needsAltText && (
@ -369,12 +381,6 @@ export const ComposePost = observer(function ComposePost({
</View> </View>
) : undefined} ) : undefined}
</ScrollView> </ScrollView>
{isProcessing ? (
<View style={[pal.viewLight, styles.processingLine]}>
<ActivityIndicator />
<Text style={pal.textLight}>{processingState}</Text>
</View>
) : undefined}
{!extLink && suggestedLinks.size > 0 ? ( {!extLink && suggestedLinks.size > 0 ? (
<View style={s.mb5}> <View style={s.mb5}>
{Array.from(suggestedLinks) {Array.from(suggestedLinks)
@ -435,13 +441,6 @@ const styles = StyleSheet.create({
paddingHorizontal: 20, paddingHorizontal: 20,
paddingVertical: 6, paddingVertical: 6,
}, },
processingLine: {
flexDirection: 'row',
alignItems: 'center',
gap: 8,
paddingHorizontal: 26,
paddingVertical: 12,
},
errorLine: { errorLine: {
flexDirection: 'row', flexDirection: 'row',
backgroundColor: colors.red1, backgroundColor: colors.red1,