From: Tom Hughes Date: Sun, 16 Mar 2014 16:47:27 +0000 (+0000) Subject: Make sure the query location is always in view X-Git-Tag: live~4347^2~18 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/1f250c45bda8a499d47b9d5fcc3cba0eb969507a Make sure the query location is always in view --- diff --git a/app/assets/javascripts/index/query.js b/app/assets/javascripts/index/query.js index 5ce996927..d9906407d 100644 --- a/app/assets/javascripts/index/query.js +++ b/app/assets/javascripts/index/query.js @@ -256,17 +256,23 @@ OSM.Query = function(map) { page.pushstate = page.popstate = function(path) { OSM.loadSidebarContent(path, function () { - page.load(path); + page.load(path, true); }); }; - page.load = function(path) { - var params = querystring.parse(path.substring(path.indexOf('?') + 1)); + page.load = function(path, noCentre) { + var params = querystring.parse(path.substring(path.indexOf('?') + 1)), + latlng = L.latLng(params.lat, params.lon); + + if (!window.location.hash && + (!noCentre || !map.getBounds().contains(latlng))) { + OSM.router.withoutMoveListener(function () { + map.setView(latlng, 15); + }); + } queryOverpass(params.lat, params.lon); enableQueryMode(); - - return map.getState(); }; page.unload = function() {