From 19b0a771f6de9428fdf708db90a441cc4669d3a5 Mon Sep 17 00:00:00 2001 From: popov Date: Wed, 28 Dec 2016 15:32:47 +1000 Subject: [PATCH] make vertex by midpoint double-clicking --- modules/behavior/select.js | 4 +++- modules/modes/select.js | 9 +++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/modules/behavior/select.js b/modules/behavior/select.js index cf5c8d139..9c627701d 100644 --- a/modules/behavior/select.js +++ b/modules/behavior/select.js @@ -27,7 +27,9 @@ export function behaviorSelect(context) { lasso = d3.select('#surface .lasso').node(), mode = context.mode(); - if (!(datum instanceof osmEntity)) { + if (datum.type === 'midpoint') { + // do nothing + } else if (!(datum instanceof osmEntity)) { if (!d3.event.shiftKey && !lasso && mode.id !== 'browse') context.enter(modeBrowse(context)); diff --git a/modules/modes/select.js b/modules/modes/select.js index a4d2dc7a6..4715daf7e 100644 --- a/modules/modes/select.js +++ b/modules/modes/select.js @@ -245,6 +245,15 @@ export function modeSelect(context, selectedIDs) { t('operations.add.annotation.vertex') ); + d3.event.preventDefault(); + d3.event.stopPropagation(); + } else if (datum.type === 'midpoint') { + var node = osmNode(); + + context.perform( + actionAddMidpoint({loc: datum.loc, edge: datum.edge}, node), + t('operations.add.annotation.vertex')); + d3.event.preventDefault(); d3.event.stopPropagation(); }