]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/leaflet.sidebar.js
Fix the "Where am I?" link
[rails.git] / app / assets / javascripts / leaflet.sidebar.js
index 8c4dee308ada2bb36068aaf2f7fe430a9501279c..db9e7aef2505228010751b145e38771e48cc7564 100644 (file)
@@ -2,6 +2,7 @@ L.OSM.sidebar = function(selector) {
   var control = {},
     sidebar = $(selector),
     current = $(),
   var control = {},
     sidebar = $(selector),
     current = $(),
+    currentButton  = $(),
     map;
 
   control.addTo = function (_) {
     map;
 
   control.addTo = function (_) {
@@ -15,17 +16,21 @@ L.OSM.sidebar = function(selector) {
       .appendTo(sidebar);
   };
 
       .appendTo(sidebar);
   };
 
-  control.togglePane = function(pane) {
+  control.togglePane = function(pane, button) {
     current
       .hide()
       .trigger('hide');
 
     current
       .hide()
       .trigger('hide');
 
+    currentButton
+      .removeClass('active');
+
     if (current === pane) {
       $(sidebar).hide();
     if (current === pane) {
       $(sidebar).hide();
-      current = $();
+      current = currentButton = $();
     } else {
       $(sidebar).show();
       current = pane;
     } else {
       $(sidebar).show();
       current = pane;
+      currentButton = button || $();
     }
 
     map.invalidateSize({pan: false, animate: false});
     }
 
     map.invalidateSize({pan: false, animate: false});
@@ -33,6 +38,9 @@ L.OSM.sidebar = function(selector) {
     current
       .show()
       .trigger('show');
     current
       .show()
       .trigger('show');
+
+    currentButton
+      .addClass('active');
   };
 
   return control;
   };
 
   return control;