2.5 KiB
2.5 KiB
2026-05-05 — Дневник
Enduro Trails — работа над прототипом
Кнопка «Поделиться» → «Скачать GPX»
- Слава попросил убрать кастомный диалог «Поделиться» (Telegram/WhatsApp)
- Оставить только скачивание GPX через
downloadGPX() - Иконка заменена на download-стрелку (стрелка вниз + линия) в том же стиле что и другие кнопки header
- HTML уже обновлён:
onclick="downloadGPX()", иконка download - Из app.js удалены функции:
shareRoute,closeShareDialog,shareTelegram,shareWhatsApp,shareNative - Из app.css удалены стили:
.share-dialog,.sd-*,#share-dialog
Drag-and-drop для точек маршрута
- Слава попросил добавить иконку «перетаскивания» (grip) в каждый wl-item
- Дев-агент добавил grip SVG (6 кружков) и touch-drag логику
- Логика вынесена в
_initWaypointDragHandles(list)с общими функциямиstartDrag/moveDrag/endDrag - Проблема: на десктопе не работало — дев сделал только touch-события
- Фикс: добавлены mouse-события (mousedown/mousemove/mouseup) с
document-level listeners для корректного завершения drag за пределами списка
Баг: «Добавить точку» не работала в баре маршрутов
- Причина:
addWaypointMode()не устанавливалаrouteMode = true - При закрытом/свайпнутом sheet
routeModeмог бытьfalse - Клик на карте проверяет
if (!routeMode) return— и игнорировал добавление - Фикс: в
addWaypointMode()добавитьrouteMode = trueперед установкойaddingWaypoint = true
Технические заметки
- Web Share API требует HTTPS — на HTTP молча падает, даже на Android Chrome
- Кастомные диалоги через DOM работают всегда, но Слава предпочёл простоту (только скачать)
- Mouse drag: важно вешать mousemove/mouseup на
document, а не наlist— иначе drag ломается при выходе курсора за пределы элемента