[Pkg-javascript-commits] [leaflet-markercluster] 21/219: Revert "instrument time elapsed and report progress"

Jonas Smedegaard dr at jones.dk
Sat May 7 09:39:07 UTC 2016


This is an automated email from the git hooks/post-receive script.

js pushed a commit to branch master
in repository leaflet-markercluster.

commit a718530e127e28a518ceee82aa2b5237fe6eb94b
Author: Rasmus Schultz <rasmus at mindplay.dk>
Date:   Mon Jan 20 09:45:36 2014 -0500

    Revert "instrument time elapsed and report progress"
    
    This reverts commit 8732cb4f0a416c220084912a7a4e0b287532a3e1.
---
 dist/leaflet.markercluster-src.js | 37 +++++++++++--------------------------
 dist/leaflet.markercluster.js     |  2 +-
 2 files changed, 12 insertions(+), 27 deletions(-)

diff --git a/dist/leaflet.markercluster-src.js b/dist/leaflet.markercluster-src.js
index c1c930c..2993348 100644
--- a/dist/leaflet.markercluster-src.js
+++ b/dist/leaflet.markercluster-src.js
@@ -32,11 +32,9 @@ L.MarkerClusterGroup = L.FeatureGroup.extend({
 		//Increase to increase the distance away that spiderfied markers appear from the center
 		spiderfyDistanceMultiplier: 1,
 
-		// When bulk adding layers, adds markers in chunks. Means addLayers may not add all the layers in the call, others will be loaded during setTimeouts
+		//When bulk adding layers, runs chunks at a time. Means addLayers may not add all the layers in the call, others will be loaded during setTimeouts
 		chunkedLoading: false,
-        chunkInterval: 200, // process markers for a maximum of ~ n milliseconds (then trigger the chunkProgress callback)
-        chunkDelay: 50, // at the end of each interval, give n milliseconds back to system/browser
-		chunkProgress: null, // progress callback: function(processed, total, elapsed) (e.g. for a progress indicator)
+		chunkSize: 500,
 
 		//Options to pass to the L.Polygon constructor
 		polygonOptions: {}
@@ -166,25 +164,15 @@ L.MarkerClusterGroup = L.FeatureGroup.extend({
 	addLayers: function (layersArray) {
 		var fg = this._featureGroup,
 			npg = this._nonPointGroup,
-			chunkInterval = this.options.chunkInterval,
-			chunkProgress = this.options.chunkProgress,
+			chunkSize = this.options.chunkSize,
 			newMarkers, i, l, m;
 
 		if (this._map) {
-			var offset = 0,
-				started = (new Date()).getTime();
+			var start = 0;
+			var end = this.options.chunkedLoading && chunkSize < layersArray.length ? chunkSize : layersArray.length;
 			var process = L.bind(function () {
-				var start = (new Date()).getTime();
-				for (; offset < layersArray.length; offset++) {
-					if (offset % 200 === 0) {
-						// every couple hundred markers, instrument the time elapsed since processing started:
-						var elapsed = (new Date()).getTime() - start;
-						if (elapsed > chunkInterval) {
-							break; // been working too hard, time to take a break :-)
-						}
-					}
-
-					m = layersArray[offset];
+				for (i = start; i < end; i++) {
+					m = layersArray[i];
 
 					//Not point data, can't be clustered
 					if (!m.getLatLng) {
@@ -208,12 +196,7 @@ L.MarkerClusterGroup = L.FeatureGroup.extend({
 					}
 				}
 
-				if (chunkProgress) {
-					// report progress and time elapsed:
-					chunkProgress(offset, layersArray.length, (new Date()).getTime() - started);
-				}
-
-				if (offset === layersArray.length) {
+				if (end === layersArray.length) {
 					//Update the icons of all those visible clusters that were affected
 					this._featureGroup.eachLayer(function (c) {
 						if (c instanceof L.MarkerCluster && c._iconNeedsUpdate) {
@@ -223,7 +206,9 @@ L.MarkerClusterGroup = L.FeatureGroup.extend({
 
 					this._topClusterLevel._recursivelyAddChildrenToMap(null, this._zoom, this._currentShownBounds);
 				} else {
-					setTimeout(process, this.options.chunkDelay);
+					start = end;
+					end = Math.min(end + chunkSize, layersArray.length);
+					setTimeout(process, 0);
 				}
 			}, this);
 
diff --git a/dist/leaflet.markercluster.js b/dist/leaflet.markercluster.js
index 541a968..3ff065f 100644
--- a/dist/leaflet.markercluster.js
+++ b/dist/leaflet.markercluster.js
@@ -3,4 +3,4 @@
  https://github.com/Leaflet/Leaflet.markercluster
  (c) 2012-2013, Dave Leaver, smartrak
 */
-!function(t,e){L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animateAddingMarkers:!1,spiderfyDistanceMultiplier:1,chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.iconCreateFunction||(this.optio [...]
\ No newline at end of file
+!function(t,e){L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animateAddingMarkers:!1,spiderfyDistanceMultiplier:1,chunkedLoading:!1,chunkSize:500,polygonOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIc [...]
\ No newline at end of file

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/leaflet-markercluster.git



More information about the Pkg-javascript-commits mailing list