nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit 155d616e879b1d70eb62d6b125dc51f062028569
parent 5c2f67d9938c6d17c200aa34d280a59aa58e0e43
Author: myadzel <myadzel@gmail.com>
Date:   Sat,  6 Dec 2025 13:10:34 +0300

fix error message (issue #1361)

Diffstat:
Msrc/lib/leaflet.control.layers.configure/index.js | 13+++++++++++--
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; } }