]> git.openstreetmap.org Git - rails.git/commitdiff
Move new note marker to click location
authorAnton Khorev <tony29@yandex.ru>
Wed, 25 Dec 2024 22:57:27 +0000 (01:57 +0300)
committerAnton Khorev <tony29@yandex.ru>
Tue, 31 Dec 2024 23:34:22 +0000 (02:34 +0300)
If not done, it's possible to lose the marker when starting from low zooms.

app/assets/javascripts/index/new_note.js

index 76d134ce6bd4de0d6282bb25d148451f8c6e96d7..885d7d2c994b22f5a35b27d1143b5df3254fa75e 100644 (file)
@@ -107,6 +107,12 @@ OSM.NewNote = function (map) {
     newNoteMarker = null;
   }
 
+  function moveNewNotMarkerToClick(e) {
+    if (newNoteMarker) newNoteMarker.setLatLng(e.latlng);
+    if (halo) halo.setLatLng(e.latlng);
+    content.find("textarea").focus();
+  }
+
   function updateControls() {
     const zoomedOut = addNoteButton.hasClass("disabled");
     const withoutText = content.find("textarea").val() === "";
@@ -162,6 +168,7 @@ OSM.NewNote = function (map) {
       });
     });
 
+    map.on("click", moveNewNotMarkerToClick);
     addNoteButton.on("disabled enabled", updateControls);
     updateControls();
 
@@ -169,6 +176,7 @@ OSM.NewNote = function (map) {
   };
 
   page.unload = function () {
+    map.off("click", moveNewNotMarkerToClick);
     addNoteButton.off("disabled enabled", updateControls);
     removeNewNoteMarker();
     addNoteButton.removeClass("active");