diff --git a/js/id/ui/preset.js b/js/id/ui/preset.js index 60555e938..02ec1a0f2 100644 --- a/js/id/ui/preset.js +++ b/js/id/ui/preset.js @@ -159,7 +159,8 @@ iD.ui.preset = function(context) { .call(field.input) .selectAll('input') .on('keydown', function() { - if (d3.event.keyCode === 13) { // enter + // if user presses enter, and combobox is not active, accept edits.. + if (d3.event.keyCode === 13 && d3.select('.combobox').empty()) { context.enter(iD.modes.Browse(context)); } }) diff --git a/js/lib/d3.combobox.js b/js/lib/d3.combobox.js index 6304f1b8b..97a2fe3cd 100644 --- a/js/lib/d3.combobox.js +++ b/js/lib/d3.combobox.js @@ -154,6 +154,7 @@ d3.combobox = function() { } function nav(dir) { + if (!suggestions.length) return; idx = Math.max(Math.min(idx + dir, suggestions.length - 1), 0); input.property('value', suggestions[idx].value); render();