]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/4949'
authorTom Hughes <tom@compton.nu>
Thu, 4 Jul 2024 17:54:03 +0000 (18:54 +0100)
committerTom Hughes <tom@compton.nu>
Thu, 4 Jul 2024 17:54:03 +0000 (18:54 +0100)
app/assets/javascripts/leaflet.share.js
app/assets/javascripts/leaflet.sidebar.js
app/assets/stylesheets/common.scss
test/system/index_test.rb

index 0b868d2cac6cf31bdd8688c854a0368559031295..b92d7079686d41aea396554a270bf96b91946a25 100644 (file)
@@ -8,6 +8,7 @@ L.OSM.share = function (options) {
 
   control.onAddPane = function (map, button, $ui) {
     // Link / Embed
+    $("#content").addClass("overlay-right-sidebar");
 
     var $linkSection = $("<div>")
       .attr("class", "share-link p-3 border-bottom border-secondary-subtle")
index 7e72278e322711e51cd3d538eed0334bbd5ed01f..9573c839d411c4a6eb5be8ebaed9d84a186cf8af 100644 (file)
@@ -31,9 +31,11 @@ L.OSM.sidebar = function (selector) {
         map.panBy([-paneWidth, 0], { animate: false });
       }
       $(sidebar).hide();
+      $("#content").addClass("overlay-right-sidebar");
       current = currentButton = $();
     } else {
       $(sidebar).show();
+      $("#content").removeClass("overlay-right-sidebar");
       current = pane;
       currentButton = button || $();
       if ($("html").attr("dir") === "rtl") {
index 4cc31d611b6d7dd0187ca475e08b298d0636e1c9..7f92b978565ecf8ee0529a51aa77f860a5ec69bb 100644 (file)
@@ -395,7 +395,7 @@ body.small-nav {
       overflow-y: scroll;
     }
 
-    .overlay-sidebar {
+    .overlay-sidebar.overlay-right-sidebar {
       #sidebar {
         position: absolute;
         width: 350px;
@@ -403,7 +403,7 @@ body.small-nav {
         overflow: hidden;
       }
 
-      #map, #map-ui {
+      #map {
         height: 100%;
       }
     }
index 1de18c9edadab94d55b41e3d537b649feb9628f0..2944b817edced0d8f4e3590e84ff79ad8895bf2d 100644 (file)
@@ -1,6 +1,41 @@
 require "application_system_test_case"
 
 class IndexTest < ApplicationSystemTestCase
+  test "should remove and add an overlay on share button click" do
+    node = create(:node)
+    visit node_path(node)
+    assert_selector "#content.overlay-right-sidebar"
+    find(".icon.share").click
+    assert_no_selector "#content.overlay-right-sidebar"
+    find(".icon.share").click
+    assert_selector "#content.overlay-right-sidebar"
+  end
+
+  test "should add an overlay on close" do
+    node = create(:node)
+    visit node_path(node)
+    find(".icon.share").click
+    assert_no_selector "#content.overlay-right-sidebar"
+    find(".share-ui .btn-close").click
+    assert_selector "#content.overlay-right-sidebar"
+  end
+
+  test "should not add overlay when not closing right menu popup" do
+    node = create(:node)
+    visit node_path(node)
+    find(".icon.share").click
+
+    find(".icon.key").click
+    assert_no_selector "#content.overlay-right-sidebar"
+    find(".icon.layers").click
+    assert_no_selector "#content.overlay-right-sidebar"
+    find(".icon.key").click
+    assert_no_selector "#content.overlay-right-sidebar"
+
+    find(".icon.key").click
+    assert_selector "#content.overlay-right-sidebar"
+  end
+
   test "node included in edit link" do
     node = create(:node)
     visit node_path(node)