From ae00a9ef63813efaaadacfcc43709a7342816463 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Mon, 21 Jun 2021 03:22:50 +0300 Subject: [PATCH] Message: Open context menu by short tap on Android --- src/components/middle/message/Message.tsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/components/middle/message/Message.tsx b/src/components/middle/message/Message.tsx index 4abf06e04..a7385139a 100644 --- a/src/components/middle/message/Message.tsx +++ b/src/components/middle/message/Message.tsx @@ -21,6 +21,7 @@ import { } from '../../../api/types'; import { FocusDirection, IAlbum, MediaViewerOrigin } from '../../../types'; +import { IS_ANDROID } from '../../../util/environment'; import { pick } from '../../../util/iteratees'; import { selectChat, @@ -405,6 +406,15 @@ const Message: FC = ({ }); }, [chatId, threadId, openMediaViewer, isScheduled]); + const handleClick = useCallback((e: ReactMouseEvent) => { + const target = e.target as HTMLDivElement; + if (!target.classList.contains('text-content') && !target.classList.contains('Message')) { + return; + } + + handleContextMenu(e); + }, [handleContextMenu]); + const handleReadMedia = useCallback((): void => { markMessagesRead({ messageIds: [messageId] }); }, [messageId, markMessagesRead]); @@ -724,7 +734,7 @@ const Message: FC = ({ // @ts-ignore teact feature style={metaSafeAuthorWidth ? `--meta-safe-author-width: ${metaSafeAuthorWidth}px` : undefined} data-message-id={messageId} - onClick={isInSelectMode ? handleMessageSelect : undefined} + onClick={isInSelectMode ? handleMessageSelect : IS_ANDROID ? handleClick : undefined} onDoubleClick={!isInSelectMode ? handleContainerDoubleClick : undefined} onMouseDown={!isInSelectMode ? handleBeforeContextMenu : undefined} onContextMenu={!isInSelectMode ? handleContextMenu : undefined}