From 57d7ec1e213311ff3aaaa48953dd7af34fec1a3e Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Mon, 23 Aug 2021 03:38:28 +0300 Subject: [PATCH] Message: Fix links system menu on Android --- src/components/middle/message/hooks/useOuterHandlers.ts | 5 +++++ src/hooks/useContextMenuHandlers.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/components/middle/message/hooks/useOuterHandlers.ts b/src/components/middle/message/hooks/useOuterHandlers.ts index cda257224..914ba7335 100644 --- a/src/components/middle/message/hooks/useOuterHandlers.ts +++ b/src/components/middle/message/hooks/useOuterHandlers.ts @@ -54,6 +54,11 @@ export default function useOuterHandlers( function handleContextMenu(e: React.MouseEvent) { if (IS_ANDROID) { + if (!(e.target as HTMLElement).matches('a[href]')) { + return; + } + + e.preventDefault(); selectMessage(); } else { onContextMenu(e); diff --git a/src/hooks/useContextMenuHandlers.ts b/src/hooks/useContextMenuHandlers.ts index ed264429f..191946b47 100644 --- a/src/hooks/useContextMenuHandlers.ts +++ b/src/hooks/useContextMenuHandlers.ts @@ -32,7 +32,7 @@ export default ( const handleContextMenu = useCallback((e: React.MouseEvent) => { document.body.classList.remove('no-selection'); - if (isMenuDisabled || (shouldDisableOnLink && (e.target as HTMLElement).matches('a.text-entity-link[href]'))) { + if (isMenuDisabled || (shouldDisableOnLink && (e.target as HTMLElement).matches('a[href]'))) { return; } e.preventDefault(); @@ -91,7 +91,7 @@ export default ( const { clientX, clientY, target } = originalEvent.touches[0]; - if (contextMenuPosition || (shouldDisableOnLink && (target as HTMLElement).matches('a.text-entity-link[href]'))) { + if (contextMenuPosition || (shouldDisableOnLink && (target as HTMLElement).matches('a[href]'))) { return; }