Skip to content

Commit 720caba

Browse files
committed
Fixed memory leak from setTimeout
1 parent 79a2088 commit 720caba

File tree

1 file changed

+3
-1
lines changed
  • packages/common-ui-web/src/components/TakePictureButton

1 file changed

+3
-1
lines changed

packages/common-ui-web/src/components/TakePictureButton/hooks.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { InteractiveStatus } from '@monkvision/types';
22
import { CSSProperties, useState } from 'react';
3+
import { useSafeTimeout } from '@monkvision/common';
34
import { styles, TAKE_PICTURE_BUTTON_COLORS } from './TakePictureButton.styles';
45

56
/**
@@ -33,11 +34,12 @@ export function useTakePictureButtonStyle(
3334
params: MonkTakePictureButtonStyleParams,
3435
): TakePictureButtonStyles {
3536
const [isPressed, setIsPressed] = useState(false);
37+
const setSafeTimeout = useSafeTimeout();
3638
const borderWidth = (params.size * (1 - INNER_BUTTON_SIZE_RATIO)) / 4;
3739

3840
const animateClick = () => {
3941
setIsPressed(true);
40-
setTimeout(() => setIsPressed(false), PRESS_ANIMATION_DURATION_MS);
42+
setSafeTimeout(() => setIsPressed(false), PRESS_ANIMATION_DURATION_MS);
4143
};
4244

4345
const buttonStyles = {

0 commit comments

Comments
 (0)