diff --git a/js/id/behavior/draw.js b/js/id/behavior/draw.js index 551649f20..2725b8111 100644 --- a/js/id/behavior/draw.js +++ b/js/id/behavior/draw.js @@ -1,16 +1,25 @@ iD.behavior.Draw = function () { var event = d3.dispatch('move', 'add', 'undo', 'cancel', 'finish'), - keybinding = d3.keybinding('draw'); + keybinding = d3.keybinding('draw'), + down; function draw(selection) { function mousemove() { - event.move(); + if (!down) event.move(); } function click() { event.add(); } + function mousedown() { + down = true; + } + + function mouseup() { + down = false; + } + function backspace() { d3.event.preventDefault(); event.undo(); @@ -27,6 +36,8 @@ iD.behavior.Draw = function () { } selection + .on('mousedown.draw', mousedown) + .on('mouseup.draw', mouseup) .on('mousemove.draw', mousemove) .on('click.draw', click);