From b7bf020eb48f900414a0c91d0f0085584d348d32 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Tue, 13 Sep 2022 10:22:46 +0200 Subject: [PATCH] Inline Bot Tooltip: Fix closing animation on sending (#2031) --- .../middle/composer/InlineBotTooltip.tsx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/components/middle/composer/InlineBotTooltip.tsx b/src/components/middle/composer/InlineBotTooltip.tsx index 0543b719f..bea34bfdc 100644 --- a/src/components/middle/composer/InlineBotTooltip.tsx +++ b/src/components/middle/composer/InlineBotTooltip.tsx @@ -14,6 +14,7 @@ import useShowTransition from '../../../hooks/useShowTransition'; import { throttle } from '../../../util/schedulers'; import { useIntersectionObserver } from '../../../hooks/useIntersectionObserver'; import usePrevious from '../../../hooks/usePrevious'; +import useCurrentOrPrev from '../../../hooks/useCurrentOrPrev'; import { useKeyboardNavigation } from './hooks/useKeyboardNavigation'; import MediaResult from './inlineResults/MediaResult'; @@ -65,6 +66,7 @@ const InlineBotTooltip: FC = ({ // eslint-disable-next-line no-null/no-null const containerRef = useRef(null); const { shouldRender, transitionClassNames } = useShowTransition(isOpen, undefined, undefined, false); + const renderedIsGallery = useCurrentOrPrev(isGallery, shouldRender); const { observe: observeIntersection, } = useIntersectionObserver({ @@ -81,8 +83,8 @@ const InlineBotTooltip: FC = ({ const selectedIndex = useKeyboardNavigation({ isActive: isOpen, - shouldRemoveSelectionOnReset: isGallery, - noArrowNavigation: isGallery, + shouldRemoveSelectionOnReset: renderedIsGallery, + noArrowNavigation: renderedIsGallery, items: inlineBotResults, onSelect: onSelectResult, onClose, @@ -103,9 +105,7 @@ const InlineBotTooltip: FC = ({ : undefined, shouldRender, ); - const renderedInlineBotResults = inlineBotResults && !inlineBotResults.length - ? prevInlineBotResults - : inlineBotResults; + const renderedInlineBotResults = inlineBotResults?.length ? inlineBotResults : prevInlineBotResults; if (!shouldRender || !(renderedInlineBotResults?.length || switchPm)) { return undefined; @@ -114,7 +114,7 @@ const InlineBotTooltip: FC = ({ const className = buildClassName( 'InlineBotTooltip composer-tooltip', IS_TOUCH_ENV ? 'no-scrollbar' : 'custom-scroll', - isGallery && 'gallery', + renderedIsGallery && 'gallery', transitionClassNames, ); @@ -145,7 +145,7 @@ const InlineBotTooltip: FC = ({ return (