From dc4c5dcb3f22e5d18418034f8bf38ff69e634caa Mon Sep 17 00:00:00 2001 From: Tom MacWright Date: Wed, 12 Dec 2012 17:45:20 -0500 Subject: [PATCH] Fix way dragging distortion. Fixes #258 --- js/id/modes/select.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/js/id/modes/select.js b/js/id/modes/select.js index 1b42bf4a5..791ae7ec8 100644 --- a/js/id/modes/select.js +++ b/js/id/modes/select.js @@ -19,13 +19,14 @@ iD.modes.Select = function (entity) { mode.history.perform(iD.actions.Noop()); } - entity.nodes.forEach(function(n) { - var node = mode.history.graph().entity(n.id), + _.uniq(_.pluck(entity.nodes, 'id')) + .forEach(function(id) { + var node = mode.history.graph().entity(id), start = mode.map.projection(node.loc), end = mode.map.projection.invert([ - start[0] + d3.event.dx, - start[1] + d3.event.dy]); - mode.history.replace(iD.actions.Move(node.id, end)); + start[0] + d3.event.dx, + start[1] + d3.event.dy]); + mode.history.replace(iD.actions.Move(id, end)); }); }) .on('dragend', function () {