diff --git a/src/component/container/element-list.tsx b/src/component/container/element-list.tsx index 829c3563b..dff657d3e 100644 --- a/src/component/container/element-list.tsx +++ b/src/component/container/element-list.tsx @@ -29,6 +29,8 @@ const DRAG_IMG_STYLE = ` @observer export class ElementList extends React.Component<{}, ElementListState> { + private dragImg?: HTMLElement; + public state = { dragging: true }; @@ -241,6 +243,10 @@ export class ElementList extends React.Component<{}, ElementListState> { private handleDragEnd(e: React.DragEvent): void { this.setState({ dragging: false }); + + if (this.dragImg && this.dragImg.parentNode) { + this.dragImg.parentNode.removeChild(this.dragImg); + } } private handleDragStart(e: React.DragEvent): void { @@ -260,6 +266,7 @@ export class ElementList extends React.Component<{}, ElementListState> { dragImg.setAttribute('style', DRAG_IMG_STYLE); document.body.appendChild(dragImg); e.dataTransfer.setDragImage(dragImg, 75, 15); + this.dragImg = dragImg; } }