diff --git a/index.html b/index.html index 30133be..3ecb010 100644 --- a/index.html +++ b/index.html @@ -61,6 +61,8 @@ role="button" aria-haspopup="true" aria-expanded="false" + data-i18n="[title]navbar.export-tooltip" + title="Export route" > Export diff --git a/js/control/Export.js b/js/control/Export.js index 97e89c1..f32aaea 100644 --- a/js/control/Export.js +++ b/js/control/Export.js @@ -1,6 +1,12 @@ BR.Export = L.Class.extend({ latLngs: [], + options: { + shortcut: { + export: 88 // char code for 'x' + } + }, + initialize: function(router, pois) { this.router = router; this.pois = pois; @@ -20,6 +26,8 @@ BR.Export = L.Class.extend({ this.exportButton.on('click', L.bind(this._generateTrackname, this)); L.DomUtil.get('submitExport').onclick = L.bind(this._export, this); + L.DomEvent.addListener(document, 'keydown', this._keydownListener, this); + this.update([]); }, @@ -116,6 +124,17 @@ BR.Export = L.Class.extend({ } }) ); + }, + + _keydownListener: function(e) { + if ( + BR.Util.keyboardShortcutsAllowed(e) && + e.keyCode === this.options.shortcut.export && + !this.exportButton.hasClass('disabled') + ) { + this._generateTrackname(); + $('#export').modal('show'); + } } }); diff --git a/locales/en.json b/locales/en.json index 766b771..8442805 100644 --- a/locales/en.json +++ b/locales/en.json @@ -145,6 +145,7 @@ "third": "3rd alternative" }, "export": "Export", + "export-tooltip": "Export route (X key)", "load": { "nogos": "No-go areas", "title": "Load",