Skip to content

Commit d2fb693

Browse files
committed
fix: prevent range slider thumbs from jumping back to initial positions after drag
1 parent 67e4274 commit d2fb693

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

src/RangeSlider.js

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -341,18 +341,16 @@ const RangeSlider = forwardRef(
341341
},
342342
});
343343

344-
const updatePositions = useCallback(() => {
344+
// Update positions only when initial values change externally
345+
useEffect(() => {
346+
// Only update if not currently being dragged
345347
if (!pressed.left && !pressed.right) {
346348
leftPos.value = initialPositions.left;
347349
rightPos.value = initialPositions.right;
348350
leftOffset.value = initialPositions.left;
349351
rightOffset.value = initialPositions.right;
350352
}
351-
}, [pressed, initialPositions, leftPos, rightPos, leftOffset, rightOffset]);
352-
353-
useEffect(() => {
354-
updatePositions();
355-
}, [updatePositions]);
353+
}, [initialMinValue, initialMaxValue]);
356354

357355
const dynamicStyles = createDynamicStyles({
358356
width: effectiveSliderWidth,

0 commit comments

Comments
 (0)