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",