diff --git a/packages/main/src/components/SegmentedButton/index.tsx b/packages/main/src/components/SegmentedButton/index.tsx index b2db7041772..1138caa4b5a 100644 --- a/packages/main/src/components/SegmentedButton/index.tsx +++ b/packages/main/src/components/SegmentedButton/index.tsx @@ -76,7 +76,7 @@ const SegmentedButton: FC = forwardRef( } const handleSegmentedButtonItemSelected = useCallback( - (e) => { + (originalOnclick) => (e) => { const newSelectedKey = e.getParameter('selectedKey'); if (newSelectedKey !== internalSelectedKey) { setSelectedKey(newSelectedKey); @@ -84,6 +84,9 @@ const SegmentedButton: FC = forwardRef( onItemSelected(Event.of(null, e.getOriginalEvent(), e.getParameters())); } } + if (typeof originalOnclick === 'function') { + originalOnclick(e); + } }, [internalSelectedKey, setSelectedKey, onItemSelected] ); @@ -125,7 +128,7 @@ const SegmentedButton: FC = forwardRef( key: item.props.id, selected: internalSelectedKey === item.props.id, disabled: disabled === true ? disabled : item.props.disabled, - onClick: handleSegmentedButtonItemSelected + onClick: handleSegmentedButtonItemSelected(item.props.onClick) }) )}