Skip to content

Commit d9fd412

Browse files
authored
Merge pull request #34495 from callstack-internal/fix/start-chat-tabs-transition
Fix StartChat screen transition stuttering
2 parents cc64ab0 + d6029f2 commit d9fd412

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/hooks/useAutoFocusInput.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,14 @@ export default function useAutoFocusInput(): UseAutoFocusInput {
2323
if (!isScreenTransitionEnded || !isInputInitialized || !inputRef.current || !isSplashHidden) {
2424
return;
2525
}
26-
InteractionManager.runAfterInteractions(() => {
26+
const focusTaskHandle = InteractionManager.runAfterInteractions(() => {
2727
inputRef.current?.focus();
2828
setIsScreenTransitionEnded(false);
2929
});
30+
31+
return () => {
32+
focusTaskHandle.cancel();
33+
};
3034
}, [isScreenTransitionEnded, isInputInitialized, isSplashHidden]);
3135

3236
useFocusEffect(
@@ -35,12 +39,12 @@ export default function useAutoFocusInput(): UseAutoFocusInput {
3539
setIsScreenTransitionEnded(true);
3640
}, CONST.ANIMATED_TRANSITION);
3741
return () => {
42+
setIsScreenTransitionEnded(false);
3843
if (!focusTimeoutRef.current) {
3944
return;
4045
}
4146
clearTimeout(focusTimeoutRef.current);
4247
};
43-
// eslint-disable-next-line react-hooks/exhaustive-deps
4448
}, []),
4549
);
4650

0 commit comments

Comments
 (0)