Merge pull request #395 from rkflx/pr/improve-keyboard-handling-and-dialog-uis
Improve keyboard handling and dialog UIs
This commit is contained in:
commit
8bcfe74e5b
6 changed files with 31 additions and 13 deletions
|
|
@ -1,11 +1,14 @@
|
||||||
LICENSE
|
LICENSE
|
||||||
|
Dockerfile
|
||||||
dist/
|
dist/
|
||||||
*.zip
|
*.zip
|
||||||
yarn.lock
|
yarn.lock
|
||||||
.idea
|
.idea
|
||||||
.gitignore
|
.gitignore
|
||||||
|
.eslintignore
|
||||||
.prettierignore
|
.prettierignore
|
||||||
.tx/
|
.tx/
|
||||||
layers/
|
layers/
|
||||||
locales/*.json
|
locales/*.json
|
||||||
resources/boundaries/
|
resources/boundaries/
|
||||||
|
resources/standalone/*.sh
|
||||||
|
|
|
||||||
21
index.html
21
index.html
|
|
@ -427,7 +427,7 @@
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<form name="export">
|
<form name="export" id="exportForm">
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label class="col-form-label col-sm-2" data-i18n="export.trackname">Name</label>
|
<label class="col-form-label col-sm-2" data-i18n="export.trackname">Name</label>
|
||||||
<div class="col-sm-10">
|
<div class="col-sm-10">
|
||||||
|
|
@ -519,7 +519,7 @@
|
||||||
type="submit"
|
type="submit"
|
||||||
class="btn btn-primary"
|
class="btn btn-primary"
|
||||||
data-i18n="export.title"
|
data-i18n="export.title"
|
||||||
form="export"
|
form="exportForm"
|
||||||
id="submitExport"
|
id="submitExport"
|
||||||
>
|
>
|
||||||
Export route
|
Export route
|
||||||
|
|
@ -680,7 +680,7 @@
|
||||||
Close
|
Close
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="submit"
|
||||||
class="btn btn-primary"
|
class="btn btn-primary"
|
||||||
form="loadedittrackForm"
|
form="loadedittrackForm"
|
||||||
data-i18n="trackasroute.title"
|
data-i18n="trackasroute.title"
|
||||||
|
|
@ -712,7 +712,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<p id="nogoError" class="invalid-feedback" style="display: none"></p>
|
<p id="nogoError" class="invalid-feedback" style="display: none"></p>
|
||||||
<form name="loadNogosForm">
|
<form name="loadNogosForm" id="loadNogosForm">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend data-i18n="loadNogos.source">Source</legend>
|
<legend data-i18n="loadNogos.source">Source</legend>
|
||||||
<div>
|
<div>
|
||||||
|
|
@ -727,10 +727,7 @@
|
||||||
</div>
|
</div>
|
||||||
<p data-i18n="modal.or">or</p>
|
<p data-i18n="modal.or">or</p>
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label
|
<label class="col-form-label col-sm-3" for="nogoFile" data-i18n="loadNogos.file"
|
||||||
class="col-form-label col-sm-3"
|
|
||||||
for="loadNogosFile"
|
|
||||||
data-i18n="loadNogos.file"
|
|
||||||
>File (.geojson)</label
|
>File (.geojson)</label
|
||||||
>
|
>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
|
|
@ -738,12 +735,12 @@
|
||||||
<input
|
<input
|
||||||
type="file"
|
type="file"
|
||||||
accept=".geojson"
|
accept=".geojson"
|
||||||
name="loadNogosFile"
|
name="nogoFile"
|
||||||
id="loadNogosFile"
|
id="nogoFile"
|
||||||
class="custom-file-input"
|
class="custom-file-input"
|
||||||
/>
|
/>
|
||||||
<label
|
<label
|
||||||
for="loadNogosFile"
|
for="nogoFile"
|
||||||
class="custom-file-label"
|
class="custom-file-label"
|
||||||
data-i18n="[data-browse]trackasroute.browse"
|
data-i18n="[data-browse]trackasroute.browse"
|
||||||
style="
|
style="
|
||||||
|
|
@ -803,7 +800,7 @@
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="submit"
|
||||||
class="btn btn-primary"
|
class="btn btn-primary"
|
||||||
form="loadNogosForm"
|
form="loadNogosForm"
|
||||||
data-i18n="loadNogos.load"
|
data-i18n="loadNogos.load"
|
||||||
|
|
|
||||||
|
|
@ -71,6 +71,10 @@ BR.Export = L.Class.extend({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_selectTrackname: function () {
|
||||||
|
trackname.setSelectionRange(0, trackname.value.lastIndexOf(' - '));
|
||||||
|
},
|
||||||
|
|
||||||
_generateTrackname: function () {
|
_generateTrackname: function () {
|
||||||
var trackname = this.trackname;
|
var trackname = this.trackname;
|
||||||
this._getCityAtPosition(
|
this._getCityAtPosition(
|
||||||
|
|
@ -103,6 +107,8 @@ BR.Export = L.Class.extend({
|
||||||
trackname.value = trackname.value.replace(/[>)]/g, '').replace(/ \(/g, ' - ');
|
trackname.value = trackname.value.replace(/[>)]/g, '').replace(/ \(/g, ' - ');
|
||||||
this._validationMessage();
|
this._validationMessage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this._selectTrackname();
|
||||||
}, this)
|
}, this)
|
||||||
);
|
);
|
||||||
}, this)
|
}, this)
|
||||||
|
|
|
||||||
|
|
@ -457,6 +457,10 @@
|
||||||
);
|
);
|
||||||
|
|
||||||
BR.WhatsNew.init();
|
BR.WhatsNew.init();
|
||||||
|
|
||||||
|
$('.modal').on('shown.bs.modal', function (e) {
|
||||||
|
$('input:visible:enabled:first', e.target).focus();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
i18next.on('languageChanged', function (detectedLanguage) {
|
i18next.on('languageChanged', function (detectedLanguage) {
|
||||||
|
|
|
||||||
|
|
@ -98,6 +98,8 @@ BR.NogoAreas = L.Control.extend({
|
||||||
|
|
||||||
L.DomEvent.addListener(document, 'keydown', this._keydownListener, this);
|
L.DomEvent.addListener(document, 'keydown', this._keydownListener, this);
|
||||||
|
|
||||||
|
L.DomUtil.get('nogoFile').onchange = L.bind(this.onFileChanged, this);
|
||||||
|
|
||||||
this.editTools.on(
|
this.editTools.on(
|
||||||
'editable:drawing:end',
|
'editable:drawing:end',
|
||||||
function (e) {
|
function (e) {
|
||||||
|
|
@ -170,6 +172,11 @@ BR.NogoAreas = L.Control.extend({
|
||||||
$('#nogoError').css('display', message ? 'block' : 'none');
|
$('#nogoError').css('display', message ? 'block' : 'none');
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onFileChanged: function (e) {
|
||||||
|
if (!e.target.files[0]) return;
|
||||||
|
$(e.target).next('label').text(e.target.files[0].name);
|
||||||
|
},
|
||||||
|
|
||||||
uploadNogos: function () {
|
uploadNogos: function () {
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -191,7 +191,8 @@ BR.routeLoader = function (map, layersControl, routing, pois) {
|
||||||
}.bind(this)
|
}.bind(this)
|
||||||
);
|
);
|
||||||
|
|
||||||
L.DomUtil.get('submitLoadEditTrack').onclick = L.bind(function () {
|
L.DomUtil.get('submitLoadEditTrack').onclick = L.bind(function (e) {
|
||||||
|
e.preventDefault(); // prevent page reload on form submission
|
||||||
this._closeCanceled = false;
|
this._closeCanceled = false;
|
||||||
this.onBusyChanged(true);
|
this.onBusyChanged(true);
|
||||||
if (this._testLayer.getLayers().length > 0) {
|
if (this._testLayer.getLayers().length > 0) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue