diff --git a/modules/ui/entity_editor.js b/modules/ui/entity_editor.js index e5fc7bb90..5168dbd8a 100644 --- a/modules/ui/entity_editor.js +++ b/modules/ui/entity_editor.js @@ -11,7 +11,8 @@ import { uiRawMembershipEditor } from './raw_membership_editor'; import { uiRawTagEditor } from './raw_tag_editor'; import { uiTagReference } from './tag_reference'; import { uiPreset } from './preset'; -import { utilRebind } from '../util/rebind'; +import { utilRebind } from '../util'; + export function uiEntityEditor(context) { var dispatch = d3.dispatch('choose'), diff --git a/modules/ui/feature_list.js b/modules/ui/feature_list.js index e43a6c845..a72abd48d 100644 --- a/modules/ui/feature_list.js +++ b/modules/ui/feature_list.js @@ -10,7 +10,8 @@ import { services } from '../services/index'; import { utilDisplayName, utilDisplayType, - utilEntityOrMemberSelector + utilEntityOrMemberSelector, + utilNoAuto } from '../util/index'; @@ -19,28 +20,34 @@ export function uiFeatureList(context) { function featureList(selection) { - var header = selection.append('div') + var header = selection + .append('div') .attr('class', 'header fillL cf'); header.append('h3') .text(t('inspector.feature_list')); - var searchWrap = selection.append('div') + var searchWrap = selection + .append('div') .attr('class', 'search-header'); - var search = searchWrap.append('input') + var search = searchWrap + .append('input') .attr('placeholder', t('inspector.search')) .attr('type', 'search') + .call(utilNoAuto) .on('keypress', keypress) .on('input', inputevent); searchWrap .call(svgIcon('#icon-search', 'pre-text')); - var listWrap = selection.append('div') + var listWrap = selection + .append('div') .attr('class', 'inspector-body'); - var list = listWrap.append('div') + var list = listWrap + .append('div') .attr('class', 'feature-list cf'); context diff --git a/modules/ui/fields/access.js b/modules/ui/fields/access.js index ab3065422..7db06ba95 100644 --- a/modules/ui/fields/access.js +++ b/modules/ui/fields/access.js @@ -1,8 +1,11 @@ import * as d3 from 'd3'; import _ from 'lodash'; -import { utilRebind } from '../../util/rebind'; -import { utilGetSetValue } from '../../util/get_set_value'; import { d3combobox } from '../../lib/d3.combobox.js'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; export function uiFieldAccess(field) { @@ -48,6 +51,7 @@ export function uiFieldAccess(field) { .attr('type', 'text') .attr('class', 'preset-input-access') .attr('id', function(d) { return 'preset-input-access-' + d; }) + .call(utilNoAuto) .each(function(d) { d3.select(this) .call(d3combobox() diff --git a/modules/ui/fields/address.js b/modules/ui/fields/address.js index 60f6d134e..ed22f2e6a 100644 --- a/modules/ui/fields/address.js +++ b/modules/ui/fields/address.js @@ -10,8 +10,11 @@ import { } from '../../geo/index'; import { services } from '../../services/index'; -import { utilRebind } from '../../util/rebind'; -import { utilGetSetValue } from '../../util/get_set_value'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; export function uiFieldAddress(field, context) { @@ -155,6 +158,7 @@ export function uiFieldAddress(field, context) { return field.t('placeholders.' + tkey); }) .attr('class', function (d) { return 'addr-' + d.id; }) + .call(utilNoAuto) .style('width', function (d) { return d.width * 100 + '%'; }); // Update diff --git a/modules/ui/fields/combo.js b/modules/ui/fields/combo.js index 06b58fafa..fb5564caa 100644 --- a/modules/ui/fields/combo.js +++ b/modules/ui/fields/combo.js @@ -3,8 +3,12 @@ import _ from 'lodash'; import { t } from '../../util/locale'; import { d3combobox } from '../../lib/d3.combobox.js'; import { services } from '../../services/index'; -import { utilRebind } from '../../util/rebind'; -import { utilGetSetValue } from '../../util/get_set_value'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; + export { uiFieldCombo as uiFieldTypeCombo, @@ -247,6 +251,7 @@ export function uiFieldCombo(field, context) { .append('input') .attr('type', 'text') .attr('id', 'preset-input-' + field.id) + .call(utilNoAuto) .call(initCombo, selection) .merge(input); diff --git a/modules/ui/fields/cycleway.js b/modules/ui/fields/cycleway.js index d6941dd6f..5861f3b69 100644 --- a/modules/ui/fields/cycleway.js +++ b/modules/ui/fields/cycleway.js @@ -1,7 +1,10 @@ import * as d3 from 'd3'; import { d3combobox } from '../../lib/d3.combobox.js'; -import { utilRebind } from '../../util/rebind'; -import { utilGetSetValue } from '../../util/get_set_value'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; export function uiFieldCycleway(field) { @@ -52,6 +55,7 @@ export function uiFieldCycleway(field) { .append('input') .attr('type', 'text') .attr('class', function(d) { return 'preset-input-cycleway preset-input-' + stripcolon(d); }) + .call(utilNoAuto) .each(function(d) { d3.select(this).call(d3combobox().data(cycleway.options(d))); }); diff --git a/modules/ui/fields/input.js b/modules/ui/fields/input.js index 9faf7597f..f7eb3221f 100644 --- a/modules/ui/fields/input.js +++ b/modules/ui/fields/input.js @@ -2,8 +2,12 @@ import * as d3 from 'd3'; import { t } from '../../util/locale'; import { dataPhoneFormats } from '../../../data/index'; import { services } from '../../services/index'; -import { utilRebind } from '../../util/rebind'; -import { utilGetSetValue } from '../../util/get_set_value'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; + export { uiFieldText as uiFieldUrl, @@ -31,6 +35,7 @@ export function uiFieldText(field, context) { .attr('type', field.type) .attr('id', fieldId) .attr('placeholder', field.placeholder() || t('inspector.unknown')) + .call(utilNoAuto) .merge(input); input diff --git a/modules/ui/fields/localized.js b/modules/ui/fields/localized.js index 8b9cd3e49..275f4b2b1 100644 --- a/modules/ui/fields/localized.js +++ b/modules/ui/fields/localized.js @@ -7,9 +7,12 @@ import { services } from '../../services/index'; import { svgIcon } from '../../svg/index'; import { tooltip } from '../../util/tooltip'; import { utilDetect } from '../../util/detect'; -import { utilGetSetValue } from '../../util/get_set_value'; -import { utilRebind } from '../../util/rebind'; -import { utilSuggestNames } from '../../util/index'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind, + utilSuggestNames +} from '../../util'; export function uiFieldLocalized(field, context) { @@ -31,6 +34,7 @@ export function uiFieldLocalized(field, context) { .attr('id', 'preset-input-' + field.id) .attr('class', 'localized-main') .attr('placeholder', field.placeholder()) + .call(utilNoAuto) .merge(input); if (field.id === 'name') { diff --git a/modules/ui/fields/maxspeed.js b/modules/ui/fields/maxspeed.js index 66866971f..75af3dbdf 100644 --- a/modules/ui/fields/maxspeed.js +++ b/modules/ui/fields/maxspeed.js @@ -3,8 +3,11 @@ import _ from 'lodash'; import { d3combobox } from '../../lib/d3.combobox.js'; import { dataImperial } from '../../../data/index'; import { geoPointInPolygon } from '../../geo/index'; -import { utilRebind } from '../../util/rebind'; -import { utilGetSetValue } from '../../util/get_set_value'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; export function uiFieldMaxspeed(field, context) { @@ -31,6 +34,7 @@ export function uiFieldMaxspeed(field, context) { .attr('type', 'text') .attr('id', 'preset-input-' + field.id) .attr('placeholder', field.placeholder()) + .call(utilNoAuto) .call(combobox) .merge(input); diff --git a/modules/ui/fields/textarea.js b/modules/ui/fields/textarea.js index 3c627e4e8..70b68e1e1 100644 --- a/modules/ui/fields/textarea.js +++ b/modules/ui/fields/textarea.js @@ -1,7 +1,10 @@ import * as d3 from 'd3'; import { t } from '../../util/locale'; -import { utilGetSetValue } from '../../util/get_set_value'; -import { utilRebind } from '../../util/rebind'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; export function uiFieldTextarea(field) { @@ -18,6 +21,7 @@ export function uiFieldTextarea(field) { .attr('id', 'preset-input-' + field.id) .attr('placeholder', field.placeholder() || t('inspector.unknown')) .attr('maxlength', 255) + .call(utilNoAuto) .on('input', change(true)) .on('blur', change()) .on('change', change()) diff --git a/modules/ui/fields/wikipedia.js b/modules/ui/fields/wikipedia.js index 050914edb..477ee2818 100644 --- a/modules/ui/fields/wikipedia.js +++ b/modules/ui/fields/wikipedia.js @@ -7,8 +7,11 @@ import { dataWikipedia } from '../../../data/index'; import { services } from '../../services/index'; import { svgIcon } from '../../svg/index'; import { utilDetect } from '../../util/detect'; -import { utilGetSetValue } from '../../util/get_set_value'; -import { utilRebind } from '../../util/rebind'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../../util'; export function uiFieldWikipedia(field, context) { @@ -58,6 +61,7 @@ export function uiFieldWikipedia(field, context) { .attr('type', 'text') .attr('class', 'wiki-lang') .attr('placeholder', t('translate.localized_translation_language')) + .call(utilNoAuto) .merge(lang); utilGetSetValue(lang, language()[1]); @@ -76,6 +80,7 @@ export function uiFieldWikipedia(field, context) { .attr('type', 'text') .attr('class', 'wiki-title') .attr('id', 'preset-input-' + field.id) + .call(utilNoAuto) .merge(title); title diff --git a/modules/ui/preset.js b/modules/ui/preset.js index 77c586626..6732468d1 100644 --- a/modules/ui/preset.js +++ b/modules/ui/preset.js @@ -7,8 +7,11 @@ import { svgIcon } from '../svg/index'; import { uiDisclosure } from './disclosure'; import { uiFields } from './fields/index'; import { uiTagReference } from './tag_reference'; -import { utilRebind } from '../util/rebind'; -import { utilGetSetValue } from '../util/get_set_value'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../util'; export function uiPreset(context) { @@ -240,6 +243,7 @@ export function uiPreset(context) { .append('input') .attr('class', 'value') .attr('type', 'text') + .call(utilNoAuto) .merge(input); input diff --git a/modules/ui/preset_list.js b/modules/ui/preset_list.js index 2bfe47eae..5d7439a02 100644 --- a/modules/ui/preset_list.js +++ b/modules/ui/preset_list.js @@ -1,5 +1,4 @@ import * as d3 from 'd3'; -import { utilRebind } from '../util/rebind'; import { d3keybinding } from '../lib/d3.keybinding.js'; import { t, textDirection } from '../util/locale'; import { actionChangePreset } from '../actions/index'; @@ -8,6 +7,7 @@ import { modeBrowse } from '../modes/index'; import { svgIcon } from '../svg/index'; import { uiPresetIcon } from './preset_icon'; import { uiTagReference } from './tag_reference'; +import { utilNoAuto, utilRebind } from '../util'; export function uiPresetList(context) { @@ -106,6 +106,7 @@ export function uiPresetList(context) { .attr('class', 'preset-search-input') .attr('placeholder', t('inspector.search')) .attr('type', 'search') + .call(utilNoAuto) .on('keydown', keydown) .on('keypress', keypress) .on('input', inputevent); diff --git a/modules/ui/raw_member_editor.js b/modules/ui/raw_member_editor.js index 6a3f50eb6..ec0ec2068 100644 --- a/modules/ui/raw_member_editor.js +++ b/modules/ui/raw_member_editor.js @@ -1,13 +1,17 @@ import * as d3 from 'd3'; import { d3combobox } from '../lib/d3.combobox.js'; import { t } from '../util/locale'; -import { actionChangeMember, actionDeleteMember } from '../actions/index'; -import { modeBrowse, modeSelect } from '../modes/index'; -import { osmEntity } from '../osm/index'; -import { svgIcon } from '../svg/index'; -import { services } from '../services/index'; +import { actionChangeMember, actionDeleteMember } from '../actions'; +import { modeBrowse, modeSelect } from '../modes'; +import { osmEntity } from '../osm'; +import { svgIcon } from '../svg'; +import { services } from '../services'; import { uiDisclosure } from './disclosure'; -import { utilDisplayName, utilDisplayType } from '../util/index'; +import { + utilDisplayName, + utilDisplayType, + utilNoAuto +} from '../util'; export function uiRawMemberEditor(context) { @@ -131,6 +135,7 @@ export function uiRawMemberEditor(context) { .property('type', 'text') .attr('maxlength', 255) .attr('placeholder', t('inspector.role')) + .call(utilNoAuto) .property('value', function(d) { return d.role; }) .on('change', changeRole); diff --git a/modules/ui/raw_membership_editor.js b/modules/ui/raw_membership_editor.js index 0bb003897..c02ad7d17 100644 --- a/modules/ui/raw_membership_editor.js +++ b/modules/ui/raw_membership_editor.js @@ -15,7 +15,7 @@ import { osmEntity, osmRelation } from '../osm/index'; import { services } from '../services/index'; import { svgIcon } from '../svg/index'; import { uiDisclosure } from './disclosure'; -import { utilDisplayName } from '../util/index'; +import { utilDisplayName, utilNoAuto } from '../util/index'; export function uiRawMembershipEditor(context) { @@ -191,6 +191,7 @@ export function uiRawMembershipEditor(context) { .property('type', 'text') .attr('maxlength', 255) .attr('placeholder', t('inspector.role')) + .call(utilNoAuto) .property('value', function(d) { return d.member.role; }) .on('change', changeRole); @@ -219,7 +220,8 @@ export function uiRawMembershipEditor(context) { enter .append('input') .attr('type', 'text') - .attr('class', 'member-entity-input'); + .attr('class', 'member-entity-input') + .call(utilNoAuto); enter .append('input') @@ -227,6 +229,7 @@ export function uiRawMembershipEditor(context) { .property('type', 'text') .attr('maxlength', 255) .attr('placeholder', t('inspector.role')) + .call(utilNoAuto) .on('change', changeRole); enter diff --git a/modules/ui/raw_tag_editor.js b/modules/ui/raw_tag_editor.js index 8ea806ef1..168ec4f66 100644 --- a/modules/ui/raw_tag_editor.js +++ b/modules/ui/raw_tag_editor.js @@ -5,8 +5,11 @@ import { services } from '../services/index'; import { svgIcon } from '../svg/index'; import { uiDisclosure } from './disclosure'; import { uiTagReference } from './tag_reference'; -import { utilGetSetValue } from '../util/get_set_value'; -import { utilRebind } from '../util/rebind'; +import { + utilGetSetValue, + utilNoAuto, + utilRebind +} from '../util'; export function uiRawTagEditor(context) { @@ -83,6 +86,7 @@ export function uiRawTagEditor(context) { .property('type', 'text') .attr('class', 'key') .attr('maxlength', 255) + .call(utilNoAuto) .on('blur', keyChange) .on('change', keyChange); @@ -93,6 +97,7 @@ export function uiRawTagEditor(context) { .property('type', 'text') .attr('class', 'value') .attr('maxlength', 255) + .call(utilNoAuto) .on('blur', valueChange) .on('change', valueChange) .on('keydown.push-more', pushMore); diff --git a/modules/util/index.js b/modules/util/index.js index 66847ad5f..fc0c71673 100644 --- a/modules/util/index.js +++ b/modules/util/index.js @@ -1,22 +1,24 @@ -export { utilTagText } from './util'; -export { utilEntitySelector } from './util'; -export { utilEntityOrMemberSelector } from './util'; -export { utilGetAllNodes } from './util'; +export { utilAsyncMap } from './util'; export { utilDisplayName } from './util'; export { utilDisplayNameForPath } from './util'; export { utilDisplayType } from './util'; -export { utilStringQs } from './util'; -export { utilQsString } from './util'; -export { utilPrefixDOMProperty } from './util'; -export { utilPrefixCSSProperty } from './util'; -export { utilSetTransform } from './util'; export { utilEditDistance } from './util'; +export { utilEntitySelector } from './util'; +export { utilEntityOrMemberSelector } from './util'; export { utilFastMouse } from './util'; -export { utilGetPrototypeOf } from './util'; -export { utilAsyncMap } from './util'; -export { utilWrap } from './util'; export { utilFunctor } from './util'; -export { utilSessionMutex } from './session_mutex'; -export { utilSuggestNames } from './suggest_names'; -export { utilTriggerEvent } from './trigger_event'; +export { utilGetAllNodes } from './util'; +export { utilGetPrototypeOf } from './util'; export { utilGetSetValue } from './get_set_value'; +export { utilNoAuto } from './util'; +export { utilPrefixCSSProperty } from './util'; +export { utilPrefixDOMProperty } from './util'; +export { utilQsString } from './util'; +export { utilRebind } from './rebind'; +export { utilSetTransform } from './util'; +export { utilSessionMutex } from './session_mutex'; +export { utilStringQs } from './util'; +export { utilSuggestNames } from './suggest_names'; +export { utilTagText } from './util'; +export { utilTriggerEvent } from './trigger_event'; +export { utilWrap } from './util'; diff --git a/modules/util/util.js b/modules/util/util.js index 503c24009..32ee0869d 100644 --- a/modules/util/util.js +++ b/modules/util/util.js @@ -252,3 +252,12 @@ export function utilFunctor(value) { return value; }; } + + +export function utilNoAuto(selection) { + return selection + .attr('autocomplete', 'off') + .attr('autocorrect', 'off') + .attr('autocapitalize', 'off') + .attr('spellcheck', 'false'); +}