diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 879f795050..dfcf7dfb02 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -64,6 +64,7 @@ This changes a core assumption from before where an element known to those servi - https://github.com/eclipse-sirius/sirius-web/issues/2823[#2823] [diagram] Fix an issue that prevents nodes from being resized smaller than their default size. - https://github.com/eclipse-sirius/sirius-web/issues/3063[#3063] [selection] Ensure Selections are always refreshed using the _current_ version of their target element - https://github.com/eclipse-sirius/sirius-web/issues/2721[#2721] [diagram] Prevent labels to exceed their container +- https://github.com/eclipse-sirius/sirius-web/issues/3100[#3100] [diagram] Add support for drop on `IconLabelNode` === New Features diff --git a/packages/diagrams/frontend/sirius-components-diagrams/src/renderer/node/IconLabelNode.tsx b/packages/diagrams/frontend/sirius-components-diagrams/src/renderer/node/IconLabelNode.tsx index 4b0f5bcf5e..a0da8d54a7 100644 --- a/packages/diagrams/frontend/sirius-components-diagrams/src/renderer/node/IconLabelNode.tsx +++ b/packages/diagrams/frontend/sirius-components-diagrams/src/renderer/node/IconLabelNode.tsx @@ -20,6 +20,7 @@ import { DiagramElementPalette } from '../palette/DiagramElementPalette'; import { IconLabelNodeData } from './IconsLabelNode.types'; import { NodeContext } from './NodeContext'; import { NodeContextValue } from './NodeContext.types'; +import { useDrop } from '../drop/useDrop'; const iconlabelStyle = ( style: React.CSSProperties, @@ -42,8 +43,14 @@ const iconlabelStyle = ( export const IconLabelNode = memo(({ data, id, selected }: NodeProps) => { const theme = useTheme(); + const { onDrop, onDragOver } = useDrop(); const { style: dropFeedbackStyle } = useDropNodeStyle(id); const { hoveredNode } = useContext(NodeContext); + + const handleOnDrop = (event: React.DragEvent) => { + onDrop(event, id); + }; + return (
{data.insideLabel ? (