brooklyn-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From henev...@apache.org
Subject [46/50] [abbrv] brooklyn-ui git commit: Fixed issue that was preventing map markers from appearing during tab-to-tab navigation
Date Mon, 01 Feb 2016 17:52:30 GMT
Fixed issue that was preventing map markers from appearing during tab-to-tab navigation


Project: http://git-wip-us.apache.org/repos/asf/brooklyn-ui/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-ui/commit/f6ae752b
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-ui/tree/f6ae752b
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-ui/diff/f6ae752b

Branch: refs/heads/0.6.0
Commit: f6ae752b9c6e58f0a7bec95d275fd0ce6c15ffac
Parents: 10b952f
Author: Martin Harris <github@nakomis.com>
Authored: Fri Nov 15 11:25:14 2013 +0000
Committer: Martin Harris <github@nakomis.com>
Committed: Fri Nov 15 11:25:14 2013 +0000

----------------------------------------------------------------------
 .../jsgui/src/main/webapp/assets/js/view/googlemaps.js | 13 ++++++++-----
 usage/jsgui/src/main/webapp/assets/js/view/home.js     |  3 +++
 2 files changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-ui/blob/f6ae752b/usage/jsgui/src/main/webapp/assets/js/view/googlemaps.js
----------------------------------------------------------------------
diff --git a/usage/jsgui/src/main/webapp/assets/js/view/googlemaps.js b/usage/jsgui/src/main/webapp/assets/js/view/googlemaps.js
index 5f94678..1a8a504 100644
--- a/usage/jsgui/src/main/webapp/assets/js/view/googlemaps.js
+++ b/usage/jsgui/src/main/webapp/assets/js/view/googlemaps.js
@@ -19,9 +19,9 @@ define(
                 // TODO info window; massive code tidy
                 drawCircles: function(map, data) {
                     var newLocs = {};
-                    var id;
                     var lm;
                     _.each(data, function(it) {
+                        var id = it.id;
                         if (it.latitude == null || it.longitude == null || (it.latitude ==
0 && it.longitude == 0)) {
                             // Suppress circle if not set or at (0,0); slightly clumsy, but
workable
                         } else if (lm = locationMarkers[id]) {
@@ -56,10 +56,10 @@ define(
                     })
 
                     // TODO yuck, we assume location markers (static field) are tied to map
(supplied)
-                    for (id in locationMarkers) {
-                        if (! newLocs[id]) {
+                    for (var marker in locationMarkers) {
+                        if (! newLocs[marker]) {
                             // location has been removed
-                            lm = locationMarkers[id];
+                            lm = locationMarkers[marker];
                             lm.circle.setMap(null);
                             lm.marker.setMap(null);
                             lm.infoWindow.getInfoWindow().setMap(null);
@@ -67,7 +67,10 @@ define(
                     }
                     locationMarkers = newLocs;
                 },
-                
+                resetCircles: function() {
+                    locationMarkers = {};
+                },
+
                 drawCircle: function(map, lat, lng, radius) {
                     var circle_latlong = new google.maps.LatLng(lat, lng);
                     var circle_options = {

http://git-wip-us.apache.org/repos/asf/brooklyn-ui/blob/f6ae752b/usage/jsgui/src/main/webapp/assets/js/view/home.js
----------------------------------------------------------------------
diff --git a/usage/jsgui/src/main/webapp/assets/js/view/home.js b/usage/jsgui/src/main/webapp/assets/js/view/home.js
index 4845bd4..fc106fd 100644
--- a/usage/jsgui/src/main/webapp/assets/js/view/home.js
+++ b/usage/jsgui/src/main/webapp/assets/js/view/home.js
@@ -61,6 +61,9 @@ define([
             			        0, 0, 1
             			        )
             			var locatedLocations = new Location.UsageLocated()
+                        // googlemaps.js isn't re-loaded during tab-to-tab navigation so
we need to reset it each time
+                        // the maps is re-drawn to reset the cached set of location markers
+                        GoogleMaps.resetCircles()
             			that.updateCircles(that, locatedLocations, GoogleMaps, map)
             			that.callPeriodically("circles", function() {
             			    that.updateCircles(that, locatedLocations, GoogleMaps, map)


Mime
View raw message