diff --git a/services/web/frontend/js/features/source-editor/components/toolbar/button-menu.tsx b/services/web/frontend/js/features/source-editor/components/toolbar/button-menu.tsx index cc534d6bf1..b8c0893432 100644 --- a/services/web/frontend/js/features/source-editor/components/toolbar/button-menu.tsx +++ b/services/web/frontend/js/features/source-editor/components/toolbar/button-menu.tsx @@ -16,25 +16,31 @@ export const ToolbarButtonMenu: FC< disabled?: boolean disablePopover?: boolean altCommand?: (view: EditorView) => void + onToggle?: (isOpen: boolean) => void }> > = memo(function ButtonMenu({ icon, id, label, altCommand, + onToggle, disabled, disablePopover, children, }) { const target = useRef(null) - const { open, onToggle, ref } = useDropdown() + const { open, onToggle: handleToggle, ref } = useDropdown() const view = useCodeMirrorViewContext() useEffect(() => { if (disablePopover && open) { - onToggle(false) + handleToggle(false) } - }, [open, disablePopover, onToggle]) + }, [open, disablePopover, handleToggle]) + + useEffect(() => { + onToggle?.(open) + }, [open, onToggle]) const button = (