From c223bcdaf796938b411c7df5c9560ebc0685ceb4 Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Sat, 4 May 2024 01:49:49 +0100 Subject: Assorted clipclop fixes (#3853) * empty state for new chat dialog * use terniary * dark mode pending state * copy message text option * fix service url input (scrollview ftw) * whoops, fix equality * slightly reduce horizontal message padding --- src/components/dms/MessageMenu.tsx | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) (limited to 'src/components/dms/MessageMenu.tsx') diff --git a/src/components/dms/MessageMenu.tsx b/src/components/dms/MessageMenu.tsx index a21324204..1e1733609 100644 --- a/src/components/dms/MessageMenu.tsx +++ b/src/components/dms/MessageMenu.tsx @@ -1,10 +1,12 @@ import React from 'react' import {Pressable, View} from 'react-native' +import * as Clipboard from 'expo-clipboard' import {ChatBskyConvoDefs} from '@atproto-labs/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useSession} from 'state/session' +import * as Toast from '#/view/com/util/Toast' import {atoms as a, useTheme} from '#/alf' import {DotGrid_Stroke2_Corner0_Rounded as DotsHorizontal} from '#/components/icons/DotGrid' import {Trash_Stroke2_Corner0_Rounded as Trash} from '#/components/icons/Trash' @@ -12,6 +14,7 @@ import {Warning_Stroke2_Corner0_Rounded as Warning} from '#/components/icons/War import * as Menu from '#/components/Menu' import * as Prompt from '#/components/Prompt' import {usePromptControl} from '#/components/Prompt' +import {Clipboard_Stroke2_Corner2_Rounded as ClipboardIcon} from '../icons/Clipboard' export let MessageMenu = ({ message, @@ -32,6 +35,14 @@ export let MessageMenu = ({ const isFromSelf = message.sender?.did === currentAccount?.did + const onCopyPostText = React.useCallback(() => { + // use when we have rich text + // const str = richTextToString(richText, true) + + Clipboard.setStringAsync(message.text) + Toast.show(_(msg`Copied to clipboard`)) + }, [_, message.text]) + const onDelete = React.useCallback(() => { // TODO delete the message }, []) @@ -62,12 +73,22 @@ export let MessageMenu = ({ )} + + + {_(msg`Copy message text`)} + + + + - {_(msg`Delete`)} + {_(msg`Delete for me`)} {!isFromSelf && ( -- cgit 1.4.1