From 8c116144150c28ab6c1584f51366aef5701943db Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Mon, 20 Sep 2021 23:49:20 +0300 Subject: [PATCH] Middle Header: Fix back button gets stuck (#1458) --- src/components/middle/MiddleHeader.tsx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/components/middle/MiddleHeader.tsx b/src/components/middle/MiddleHeader.tsx index 0d3a69e61..062e95eb0 100644 --- a/src/components/middle/MiddleHeader.tsx +++ b/src/components/middle/MiddleHeader.tsx @@ -186,6 +186,12 @@ const MiddleHeader: FC = ({ openChat({ id: chatId, threadId: MAIN_THREAD_ID, type: 'pinned' }); }, [openChat, chatId]); + const setBackButtonActive = useCallback(() => { + setTimeout(() => { + isBackButtonActive.current = true; + }, BACK_BUTTON_INACTIVE_TIME); + }, []); + const handleBackClick = useCallback((e: React.MouseEvent) => { if (!isBackButtonActive.current) return; @@ -200,6 +206,7 @@ const MiddleHeader: FC = ({ if (isSelectModeActive) { exitMessageSelectMode(); + setBackButtonActive(); return; } @@ -211,16 +218,16 @@ const MiddleHeader: FC = ({ toggleLeftColumn(); } + setBackButtonActive(); + return; } openPreviousChat(); - setTimeout(() => { - isBackButtonActive.current = true; - }, BACK_BUTTON_INACTIVE_TIME); + setBackButtonActive(); }, [ threadId, messageListType, currentTransitionKey, isSelectModeActive, openPreviousChat, shouldShowCloseButton, - openChat, toggleLeftColumn, exitMessageSelectMode, + openChat, toggleLeftColumn, exitMessageSelectMode, setBackButtonActive, ]); const unreadCount = useMemo(() => {