@@ -288,7 +288,23 @@ const Slider = React.forwardRef((props: SliderProps, ref: React.Ref<SliderRef>)
288288 setValue ( cloneNextValues ) ;
289289 } ;
290290
291- const changeToCloseValue = ( newValue : number ) => {
291+ const finishChange = ( ) => {
292+ onAfterChange ?.( getTriggerValue ( rawValuesRef . current ) ) ;
293+ } ;
294+
295+ const [ draggingIndex , draggingValue , cacheValues , onStartDrag ] = useDrag (
296+ containerRef ,
297+ direction ,
298+ rawValues ,
299+ mergedMin ,
300+ mergedMax ,
301+ formatValue ,
302+ triggerChange ,
303+ finishChange ,
304+ offsetValues ,
305+ ) ;
306+
307+ const changeToCloseValue = ( newValue : number , e ?: React . MouseEvent ) => {
292308 if ( ! disabled ) {
293309 let valueIndex = 0 ;
294310 let valueDist = mergedMax - mergedMin ;
@@ -314,6 +330,9 @@ const Slider = React.forwardRef((props: SliderProps, ref: React.Ref<SliderRef>)
314330 onBeforeChange ?.( getTriggerValue ( cloneNextValues ) ) ;
315331 triggerChange ( cloneNextValues ) ;
316332 onAfterChange ?.( getTriggerValue ( cloneNextValues ) ) ;
333+ if ( e ) {
334+ onStartDrag ( e , valueIndex , cloneNextValues ) ;
335+ }
317336 }
318337 } ;
319338
@@ -344,7 +363,7 @@ const Slider = React.forwardRef((props: SliderProps, ref: React.Ref<SliderRef>)
344363 }
345364
346365 const nextValue = mergedMin + percent * ( mergedMax - mergedMin ) ;
347- changeToCloseValue ( formatValue ( nextValue ) ) ;
366+ changeToCloseValue ( formatValue ( nextValue ) , e ) ;
348367 } ;
349368
350369 // =========================== Keyboard ===========================
@@ -384,22 +403,6 @@ const Slider = React.forwardRef((props: SliderProps, ref: React.Ref<SliderRef>)
384403 return draggableTrack ;
385404 } , [ draggableTrack , mergedStep ] ) ;
386405
387- const finishChange = ( ) => {
388- onAfterChange ?.( getTriggerValue ( rawValuesRef . current ) ) ;
389- } ;
390-
391- const [ draggingIndex , draggingValue , cacheValues , onStartDrag ] = useDrag (
392- containerRef ,
393- direction ,
394- rawValues ,
395- mergedMin ,
396- mergedMax ,
397- formatValue ,
398- triggerChange ,
399- finishChange ,
400- offsetValues ,
401- ) ;
402-
403406 const onStartMove : OnStartMove = ( e , valueIndex ) => {
404407 onStartDrag ( e , valueIndex ) ;
405408
0 commit comments