diff --git a/js/id/modes/select.js b/js/id/modes/select.js index b58a9d485..57d97817a 100644 --- a/js/id/modes/select.js +++ b/js/id/modes/select.js @@ -133,8 +133,16 @@ iD.modes.Select = function(entity, initial) { radialMenu = iD.ui.RadialMenu(entity, history); - if (d3.event) { - surface.call(radialMenu, d3.mouse(surface.node())); + if (d3.event && !initial) { + var loc = map.mouseCoordinates(); + + if (entity.type === 'node') { + loc = entity.loc; + } else if (entity.type === 'way') { + loc = iD.geo.chooseIndex(entity, d3.mouse(map.surface.node()), map).loc; + } + + surface.call(radialMenu, map.projection(loc)); } };