diff --git a/src/routes/Player/SubtitlesMenu/Stepper/Stepper.tsx b/src/routes/Player/SubtitlesMenu/Stepper/Stepper.tsx index 0d402a455..9307eb2fe 100644 --- a/src/routes/Player/SubtitlesMenu/Stepper/Stepper.tsx +++ b/src/routes/Player/SubtitlesMenu/Stepper/Stepper.tsx @@ -1,4 +1,4 @@ -import React, { useCallback, useEffect, useRef } from 'react'; +import React, { useCallback, useEffect, useMemo, useRef } from 'react'; import { useTranslation } from 'react-i18next'; import classNames from 'classnames'; import Icon from '@stremio/stremio-icons/react'; @@ -37,6 +37,14 @@ const Stepper = ({ className, label, value, unit, step, min, max, disabled, onCh timeout.cancel(); }; + const decreaseDisabled = useMemo(() => { + return disabled || typeof value !== 'number' || (typeof min === 'number' && value <= min); + }, [disabled, min, value]); + + const increaseDisabled = useMemo(() => { + return disabled || typeof value !== 'number' || (typeof max === 'number' && value >= max); + }, [disabled, max, value]); + const updateValue = useCallback((delta: number) => { onChange(clamp(localValue.current + delta, min, max)); }, [onChange]); @@ -72,7 +80,7 @@ const Stepper = ({ className, label, value, unit, step, min, max, disabled, onCh