X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/c71209507bbc80c3e90006e67b93388b61fd0336..a0660c009c554b19c77297aa1afb38291485adef:/app/assets/javascripts/leaflet.sidebar.js diff --git a/app/assets/javascripts/leaflet.sidebar.js b/app/assets/javascripts/leaflet.sidebar.js index 8c4dee308..bb046f99a 100644 --- a/app/assets/javascripts/leaflet.sidebar.js +++ b/app/assets/javascripts/leaflet.sidebar.js @@ -1,7 +1,8 @@ -L.OSM.sidebar = function(selector) { +L.OSM.sidebar = function (selector) { var control = {}, sidebar = $(selector), current = $(), + currentButton = $(), map; control.addTo = function (_) { @@ -9,30 +10,37 @@ L.OSM.sidebar = function(selector) { return control; }; - control.addPane = function(pane) { + control.addPane = function (pane) { pane .hide() .appendTo(sidebar); }; - control.togglePane = function(pane) { + control.togglePane = function (pane, button) { current .hide() - .trigger('hide'); + .trigger("hide"); + + currentButton + .removeClass("active"); if (current === pane) { $(sidebar).hide(); - current = $(); + current = currentButton = $(); } else { $(sidebar).show(); current = pane; + currentButton = button || $(); } - map.invalidateSize({pan: false, animate: false}); + map.invalidateSize({ pan: false, animate: false }); current .show() - .trigger('show'); + .trigger("show"); + + currentButton + .addClass("active"); }; return control;