commit 155d616e879b1d70eb62d6b125dc51f062028569
parent 5c2f67d9938c6d17c200aa34d280a59aa58e0e43
Author: myadzel <myadzel@gmail.com>
Date: Sat, 6 Dec 2025 13:10:34 +0300
fix error message (issue #1361)
Diffstat:
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/lib/leaflet.control.layers.configure/index.js b/src/lib/leaflet.control.layers.configure/index.js
@@ -167,6 +167,15 @@ class LayersConfigDialog {
}
}
+ displayError(message, layerModel, event) {
+ layerModel.error(message);
+
+ setTimeout(() => {
+ event.target.parentNode.querySelector('.error')
+ .scrollIntoView({block: 'nearest', behavior: 'smooth'});
+ }, 0);
+ }
+
onHotkeyInput(layerModel, event) {
layerModel.error(null);
if (['Delete', 'Backspace', 'Space'].includes(event.code)) {
@@ -184,13 +193,13 @@ class LayersConfigDialog {
}
const match = /^(Key|Digit)(.)/u.exec(event.code);
if (!match) {
- layerModel.error('Only keys A-Z and 0-9 can be used for hotkeys.');
+ this.displayError('Only keys A-Z and 0-9 can be used for hotkeys.', layerModel, event);
return;
}
const newHotkey = match[2];
for (const layer of this.allLayerModels()) {
if (layer !== layerModel && layer.hotkey() === newHotkey) {
- layerModel.error(`Hotkey "${newHotkey}" is already used by layer "${layer.title}"`);
+ this.displayError(`Hotkey "${newHotkey}" is already used by layer "${layer.title}"`, layerModel, event);
return;
}
}