diff --git a/src/containers/stage.jsx b/src/containers/stage.jsx
index a6204bab7c8086d55677e29624feb29346bd0d4c..5cee4e89bdbe7e973517950aaffedd27e82df211 100644
--- a/src/containers/stage.jsx
+++ b/src/containers/stage.jsx
@@ -320,7 +320,6 @@ class Stage extends React.Component {
         if (this.state.dragId) return;
         const drawableId = this.renderer.pick(x, y);
         if (drawableId === null) return;
-        const drawableData = this.renderer.extractDrawable(drawableId, x, y);
         const targetId = this.props.vm.getTargetIdForDrawableId(drawableId);
         if (targetId === null) return;
 
@@ -332,6 +331,9 @@ class Stage extends React.Component {
         // Dragging always brings the target to the front
         target.goToFront();
 
+        // Extract the drawable art
+        const drawableData = this.renderer.extractDrawable(drawableId, x, y);
+
         this.props.vm.startDrag(targetId);
         this.setState({
             isDragging: true,