Merge pull request #395 from rkflx/pr/improve-keyboard-handling-and-dialog-uis

Improve keyboard handling and dialog UIs
This commit is contained in:
Norbert Renner 2021-04-02 17:11:43 +02:00 committed by GitHub
commit 8bcfe74e5b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 31 additions and 13 deletions

View file

@ -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

View file

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

View file

@ -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)

View file

@ -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) {

View file

@ -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;

View file

@ -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) {